Khi chạy kiểm thử phía thiết bị (ví dụ: kiểm thử đo lường, kiểm thử UI Automator), trình thu thập phía máy chủ có thể không phải là giải pháp lý tưởng vì rất khó đồng bộ hoá bộ sưu tập chỉ số với kiểm thử đang chạy trên thiết bị. Ví dụ: ảnh chụp màn hình được chụp không đồng bộ có thể bỏ lỡ màn hình mong muốn và trở nên vô dụng.
Để đáp ứng các trường hợp sử dụng này, chúng tôi có một phiên bản trình thu thập dữ liệu phía thiết bị và có thể sử dụng trong mọi hoạt động đo lường AndroidJUnitRunner
.
Bạn có thể triển khai BaseMetricListener
để tự động báo cáo các chỉ số được thu thập theo cách hoàn toàn tương thích với quy trình báo cáo Tradefed.
Thư viện này được tách biệt khỏi chính Tradefed và có thể được sử dụng mà không cần Tradefed.
Nếu đang sử dụng trình chạy AndroidJUnitTest
từ Tradefed, bạn có thể chỉ định tuỳ chọn dòng lệnh sau để trình thu thập dữ liệu chạy cùng với các chương trình kiểm thử:
--device-listeners android.device.collectors.ScreenshotListener
LOCAL_STATIC_JAVA_LIBRARIES += collector-device-lib
Triển khai
Khi triển khai trên lớp cơ sở BaseMetricListener
, bạn có thể chọn thời điểm muốn thu thập các chỉ số trong vòng đời của hoạt động đo lường:
- Khi một lần chạy kiểm thử bắt đầu:
onTestRunStart
- Khi một trường hợp kiểm thử bắt đầu:
onTestStart
- Khi một trường hợp kiểm thử kết thúc:
onTestEnd
- Khi một trường hợp kiểm thử không thành công:
onTestFail
- Khi một lần chạy kiểm thử kết thúc:
onTestRunEnd
Tương tác
Việc thu thập chỉ số ở phía thiết bị được thực hiện đồng bộ với chính quá trình thực thi đo lường và các chỉ số được chuyển trở lại kết quả đo lường và được Tradefeed phân tích cú pháp để được báo cáo như một phần của lệnh gọi.