Bộ kiểm tra trạng thái hệ thống (SSC) được xác định ở cấu hình cấp bộ và chạy giữa mỗi mô-đun. Chúng thực hiện các bước kiểm tra để xác định xem mô-đun có thay đổi hay không và không khôi phục lại một số trạng thái, ví dụ: thay đổi thuộc tính hệ thống giá trị.
SSC chủ yếu được dùng để đảm bảo người viết mô-đun không quên dọn dẹp sau quá trình thử nghiệm; nhưng nếu có, hãy cung cấp dấu vết của vấn đề để có thể giải quyết.
Mục đích phụ cũng là để khôi phục trạng thái ban đầu khi có thể, ví dụ: đóng khoá bàn phím nếu nó để mở.
Định nghĩa XML của trình kiểm tra trạng thái hệ thống
<system_checker class="com.android.tradefed.suite.checker.KeyguardStatusChecker" />
<system_checker class="com.android.tradefed.suite.checker.LeakedThreadStatusChecker" />
<system_checker class="com.android.tradefed.suite.checker.SystemServerStatusChecker" />
SSC được xác định trong thẻ system_checker
ở cấu hình Tradefeed
XML.
Triển khai
Mọi SSC phải triển khai ISystemStatusChecker
giao diện,
Cung cấp 2 phương thức chính là preExecutionCheck
và postExecutionCheck
chạy trước và sau mỗi lần thực thi mô-đun.
Trình kiểm tra có thể chỉ triển khai một trong hai cách nói trên, hoặc triển khai cả hai nếu cần kiểm tra trạng thái trước mô-đun và so sánh với trạng thái sau mô-đun.
Một số ví dụ
triển khai
có trong Tradefeed. Mỗi cách triển khai nên tập trung vào một lần kiểm tra
giúp bạn cải thiện khả năng tái sử dụng. Ví dụ:
SystemServerStatusCheck
kiểm tra xem quy trình system_server
có khởi động lại trên thiết bị trong
bộ kiểm thử. Trong postExecutionCheck
, lệnh gọi deviceSoftRestarted
,
được xác định trong
NativeDevice
để kiểm tra xem quá trình system_server
đã khởi động lại hay chưa.
Mỗi toán tử trả về
StatusCheckerResult
!
cho phép khai thác quyết định xem có thông tin bổ sung, chẳng hạn như báo cáo lỗi,
cần được chụp.
Chúng được xác định ở đâu trong CTS?
Trình kiểm tra trạng thái hệ thống CTS được định nghĩa trong /test/suite_harness/tools/cts-tradefed/res/config/cts-system- Chromes.xml.
Cách tìm các lỗi của trình kiểm tra
Theo mặc định, lỗi của trình kiểm tra hệ thống chỉ hiển thị trong nhật ký và dưới dạng báo cáo lỗi
được ghi lại cho lệnh gọi có tên theo định dạng
bugreport-checker-post-module-<module name>.zip
.
Điều này giúp bạn biết được báo cáo lỗi được tạo sau mô-đun nào.
Bạn có thể tạo báo cáo cho trình kiểm tra hệ thống dưới dạng lỗi kiểm thử bằng cách
đặt tuỳ chọn --report-system-checkers
thành true
. Điều này dẫn đến
chạy kiểm thử hiển thị là không thành công với lý do không thành công là trình kiểm tra trạng thái
kiểm tra cụ thể.