Khi chạy các kiểm thử phía thiết bị (ví dụ: các kiểm thử về công cụ đo lường, UI Automator), các bộ thu thập phía máy chủ lưu trữ có thể không phù hợp vì khó đồng bộ hoá việc thu thập chỉ số với một 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ị thiếu màn hình mong muốn và không có tác dụng.
Để đáp ứng những trường hợp sử dụng này, phiên bản phía thiết bị của các trình thu thập dữ liệu của chúng tôi tồn tại và có thể được dùng trong mọi hoạt động đo lường AndroidJUnitRunner
.
BaseMetricListener
có thể được triển khai để 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 tách biệt với Tradefed và có thể được 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 lựa chọn dòng lệnh sau để trình thu thập dữ liệu chạy cùng với các 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 đợt chạy thử nghiệm 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 đợt chạy thử nghiệm kết thúc:
onTestRunEnd
Tương tác
Tập hợp các 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 truyền trở lại kết quả đo lường và được Tradefed phân tích cú pháp để được báo cáo như một phần của lệnh gọi.