執行裝置端測試 (例如設備測試、UI Automator 測試) 時,主機端收集器可能不是理想選擇,因為很難將指標收集作業與裝置上執行的測試同步處理。舉例來說,以非同步方式擷取的螢幕截圖可能無法擷取到所需畫面,因此毫無用處。
為滿足這些用途,我們提供裝置端收集器,可用於任何 AndroidJUnitRunner 儀器。BaseMetricListener
可實作,自動回報以完全相容於 Tradefed 報表管道的方式收集的指標。
這個程式庫與 Tradefed 本身分離,因此不使用 Tradefed 也能使用。
如果您使用 Tradefed 的 AndroidJUnitTest 執行器,可以指定下列指令列選項,讓收集器與測試一併執行:
--device-listeners android.device.collectors.ScreenshotListener
LOCAL_STATIC_JAVA_LIBRARIES += collector-device-lib
導入作業
在基礎類別 BaseMetricListener 上實作時,您可以選擇要在儀表板生命週期的哪個階段收集指標:
- 測試執行開始時間:
onTestRunStart - 測試案例開始時:
onTestStart - 測試案例結束時:
onTestEnd - 測試案例失敗時:
onTestFail - 測試執行完畢後:
onTestRunEnd
互動
裝置端的指標收集作業會與檢測執行作業本身同步進行,指標會傳回檢測結果,並由 Tradefed 剖析,做為叫用作業的一部分回報。