Tập 14: của Zhaoyang Li trên MTV và Eric Aleshire trong TOK (tháng 10 năm 2020)
Các tập trước
Bạn muốn phát hiện lỗi hồi quy cho tính năng mới của mình trong Chrome? Thêm thử nghiệm vào thác nước (cơ sở hạ tầng thử nghiệm và xây dựng liên tục của Chrome)!
Có nhiều trình tạo trên thác nước của Chrome chạy thử nghiệm trên nhiều nền tảng. Bài viết này mô tả cách thêm một bộ thử nghiệm vào một Trình tạo bản dựng của Google. Trước khi tiếp tục, hãy cân nhắc các câu hỏi sau:
Các thử nghiệm mới nên được triển khai trong một bộ thử nghiệm hoàn toàn mới hay chỉ được thêm vào bộ thử nghiệm hiện có?
- Các chương trình kiểm thử được sắp xếp trong các bộ kiểm thử theo độ gần của vị trí và giao diện nguồn. Nếu thử nghiệm mới của bạn không thể phù hợp về mặt logic với bất kỳ bộ thử nghiệm hiện có nào, có thể bạn cần một bộ công cụ mới.
Kiểm thử nên chạy trên trình tạo công khai hay trình tạo nội bộ?
- Sử dụng trình tạo nội bộ nếu mã nằm trong kho lưu trữ nội bộ hoặc liên quan đến dữ liệu bảo mật.
Kiểm thử nên chạy trong FYI CI, CI chính hay hàng đợi cam kết(CQ)?
- FYI CI cần bạn tự giám sát và được dùng để tinh chỉnh thử nghiệm hoặc thử nghiệm.
- Các xét nghiệm CI chính thường xuyên được giám sát viên giám sát.
- CQ chặn việc gửi CL khi không thành công nhưng lấy nhiều tài nguyên cơ sở hơn. Bộ ứng dụng mới phải luôn bắt đầu từ CI trước khi được thăng cấp lên CQ.
- Nếu bạn không chắc chắn, thì nhóm phụ trách ngôn ngữ bản Anh của nền tảng có thể giúp bạn quyết định.
Tôi đã có một bộ thử nghiệm chạy trong CI, làm cách nào để thêm bộ thử nghiệm đó vào CQ? / Nếu tôi cần một công cụ tạo mới?
- Báo cáo lỗi trong Cơ sở hạ tầng>Ứng dụng>Thành phần Chrome để
Nhóm
chrome-browser-infra@
có thể bắt đầu đánh giá và giúp bạn thiết lập.
Cách thêm bộ thử nghiệm vào một trình tạo hiện có
Để thêm bộ kiểm thử vào một trình tạo hiện có, bạn cần định cấu hình một số tệp
trong //src/testing/buildbot/
:
- Tạo khoá trong
gn_isolate_map.pyl
cho bộ thử nghiệm mới với nhãn mục tiêu thử nghiệm và thông tin về loại. Thêm khoá đó vào một nhóm thử nghiệm trong
test_suites.pyl
. (Bạn có thể tìm thấy mối liên kết từ tên trình tạo đến nhóm thử nghiệm trên trình tạo trongwaterfalls.pyl
.)'all_simulator_tests': { 'previously_existing_test_suite': {}, 'exciting_new_feature_test_suite': {}, },
Tinh chỉnh khác.
mixins.pyl
chứa các đối số có thể áp dụng cho một nhóm bài kiểm thử ở các cấp nhóm khác nhau.variants.pyl
giúp chạy một bộ công cụ trong nhiều thực thể bằng các đối số khác nhau.
Tạo lại tệp cấu hình bằng cách chạy
generate_buildbot_json.py
.
Sau đó, bạn chỉ cần kiểm tra các thay đổi trong cấu hình của mình; các trình tạo chạy bộ công cụ này sẽ tự động chọn các thử nghiệm mới và kết quả sẽ bắt đầu chuyển vào giao diện web cho trình tạo trên thác nước - hoàn tất với nhiều thông tin gỡ lỗi trong trường hợp không thành công!