Phần này mô tả nội bộ của Tradefed và các mối quan hệ của chúng. Xem các trang con được liên kết để biết thêm chi tiết.
Cấu hình thử nghiệm
Cấu hình thử nghiệm trong Tradefed được mô tả ở định dạng XML. Hiểu cấu trúc của cấu hình là chìa khóa để chạy và tùy chỉnh các thử nghiệm.
Cấu trúc cấu hình TF
Cấu hình TF toàn cầu
Tệp Cấu hình Toàn cầu là một cấu hình XML Tradefed đặc biệt được tải khi Tradefed khởi động thông qua biến môi trường TF_GLOBAL_CONFIG
. Nó tải các đối tượng liên quan đến phạm vi phiên bản Tradefed sẽ ảnh hưởng đến hành vi khai thác tổng thể.
Kho khóa
Kho khóa cho phép đưa các tùy chọn dòng lệnh vào Tradefed đến từ kho khóa để tránh tham chiếu giá trị trực tiếp trên dòng lệnh. Điều này có thể được sử dụng để ẩn mật khẩu khỏi dòng lệnh bằng cách lấy trực tiếp mật khẩu từ kho khóa.
Quản lý thiết bị
Người quản lý thiết bị chịu trách nhiệm theo dõi trạng thái của thiết bị trên phiên bản đang chạy của Tradefed. Các khía cạnh như trạng thái phân bổ và trạng thái trực tuyến đều được theo dõi.
Lập lịch lệnh kiểm tra
Bộ lập lịch lệnh kiểm tra trong Tradefed nhận các lệnh để chạy, liên kết chúng với các thiết bị và bắt đầu lệnh gọi kiểm tra.
Xây dựng nhà cung cấp
Nhà cung cấp bản dựng là bước đầu tiên của bất kỳ lệnh gọi thử nghiệm nào. Nó tải xuống các tài nguyên cần thiết để thiết lập và chạy thử nghiệm (hình ảnh xây dựng, APK thử nghiệm, v.v.). Nó cũng tham chiếu chúng trong đối tượng BuildInfo
sẽ được chuyển qua bài kiểm tra. Các tài nguyên sẵn có cục bộ cũng có thể được liên kết trong đối tượng BuildInfo
.
Trình chuẩn bị và dọn dẹp mục tiêu
Trình chuẩn bị mục tiêu cung cấp các hành động tùy chọn có thể được thực hiện để định cấu hình mục tiêu đang được thử nghiệm ở trạng thái nhất định, ví dụ: flash thiết bị, đặt một số thuộc tính nhất định và kết nối với Wi-Fi.
Người chạy thử
Người chạy thử nghiệm trong Tradefed đề cập đến đối tượng chịu trách nhiệm thực hiện thử nghiệm thực tế. Những người chạy thử nghiệm khác nhau điều khiển việc thực hiện thử nghiệm theo những cách khác nhau; ví dụ: người chạy thử nghiệm thiết bị sẽ rất khác với người chạy thử nghiệm JUnit.
Báo cáo kết quả
Trình báo cáo kết quả trong Tradefed đề cập đến đối tượng sẽ gửi kết quả đến một đích cụ thể. Mỗi cách triển khai thường được chuyên biệt hóa cho các kết quả phụ trợ khác nhau. Và người báo cáo kết quả chịu trách nhiệm chuyển đổi định dạng kết quả Tradefed sang định dạng đích.
Thiết kế linh hoạt này cho phép bất kỳ bài kiểm tra nào báo cáo tới bất kỳ đích đến kết quả nào và dễ dàng thêm nhiều bài kiểm tra theo cách riêng biệt.
Trình thu thập số liệu
Bộ thu thập số liệu là một đối tượng đặc biệt trong Tradefed, trực giao với quá trình thực hiện kiểm tra. Nó cho phép thu thập thông tin tại các thời điểm khác nhau trong vòng đời kiểm thử (ví dụ: bắt đầu kiểm thử, kết thúc kiểm thử). Vì bộ thu thập được tách rời khỏi chính bài kiểm tra nên các điểm có thể được hoán đổi, thêm và xóa mà không cần phải thay đổi bản thân bài kiểm tra.
Thiết lập trên toàn máy chủ
Phần này mô tả các thiết lập có thể áp dụng cho phiên bản Tradefed đầy đủ đang chạy. Các tùy chọn này ảnh hưởng đến toàn bộ hoạt động của dây nịt để thích ứng với các môi trường khác nhau, chẳng hạn như trong mạng bị hạn chế.
Tính năng bổ sung
Các phần sau đây mô tả cách sử dụng chung của các đối tượng Tradefed thay vì Tradefed.
Phân đoạn được giao dịch
Khi kho dữ liệu thử nghiệm lớn hoặc mất nhiều thời gian để thực thi, có thể chia nó ra nhiều thiết bị. Chúng tôi gọi sự phân chia này là sharding . Phần này mô tả cách thức hoạt động của sharding và cách nó được cấu hình.
Sử dụng SL4A
Tradefed hỗ trợ lớp tập lệnh cho Android, SL4A; đây là bộ công cụ tự động hóa để gọi API Android theo cách độc lập với nền tảng.
SL4A với các chi tiết được trao đổi
Tải xuống @option động
Trong một số trường hợp, các tệp cần thiết cho quá trình kiểm tra hoặc một số thao tác cụ thể không có sẵn cục bộ. Tính năng này cho phép Tradefed lấy các tệp này từ một vị trí ở xa mà không cần thông qua nhà cung cấp bản dựng.