Trang này mô tả các thông tin cơ bản về cách triển khai một trình báo cáo kết quả mới và định cấu hình cho bài kiểm thử.
Giao diện cốt lõi
Để xác định một trình báo cáo kết quả mới trong Tradefeed, một lớp phải triển khai
thời gian
ITestInvocationListener
cho phép nhận và xử lý các giai đoạn khác nhau của
lời gọi:
invocationStarted
invocationEnded
invocationFailed
Trình báo cáo kết quả cũng xử lý các giai đoạn khác nhau của mỗi lần chạy kiểm thử:
testRunStarted
testStarted
testFailed
hoặctestIgnored
testEnded
testRunFailed
testRunEnded
Dựa vào tất cả những sự kiện này, có 2 loại trình báo cáo kết quả chính:
- Bạn chỉ nên quan tâm đến việc báo cáo kết quả hoàn chỉnh cuối cùng.
- Thực hiện thao tác đối với một phần kết quả.
Trình báo cáo kết quả báo cáo kết quả hoàn chỉnh cuối cùng
Đây là trường hợp phổ biến nhất khi tương tác với
nhận kết quả. Người báo cáo chỉ nhận và tích luỹ
kết quả rồi gửi tất cả trên invocationEnded
đến điểm cuối kết quả.
Thay vào đó, những người báo cáo đó nên mở rộng CollectingTestListener
của giao diện cơ sở để tránh phải triển khai lại thao tác lưu và lưu trữ
kết quả cho đến invocationEnded
.
Trình báo cáo kết quả báo cáo một phần kết quả
Loại này thường được sử dụng cho phương pháp phân luồng kết quả khi kết quả sẽ được nhận và đẩy tới một số nơi khác ngay lập tức. Ví dụ: một phóng viên ghi nhật ký kết quả vào bảng điều khiển sẽ thuộc loại này.
Đây là loại dành riêng cho loại xử lý được yêu cầu đối với các sự kiện. vì vậy, triển khai giao diện cơ sở thường là cách được đề xuất.
Cấu hình XML
Thẻ đối tượng là result_reporter
. Ví dụ:
<result_reporter class="com.android.tradefed.result.ConsoleResultReporter">
<option name="suppress-passed-tests" value="true"/>
</result_reporter>