創建新的結果報告器
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
本節介紹如何實現新的結果報告器並對其進行配置以進行測試的基礎知識。
核心接口
為了在 Tradefed 中定義新的結果報告器,類必須實現ITestInvocationListener接口,該接口允許接收和處理調用的不同階段:
結果報告器還處理每個測試運行的不同階段:
- 測試運行開始
- 測試開始
- 測試失敗/測試忽略
- 測試結束
- 測試運行失敗
- 測試運行結束
鑑於所有這些事件,有兩種主要類型的結果報告者,即:
報告最終完整結果的結果報告器
在與接收結果的外部服務交互時,這種類型是最常見的情況。報告者只需接收並累積結果,然後在invocationEnded
上將它們全部發送到結果端點。
建議那些報告者擴展CollectingTestListener
而不是基本接口,以避免重新實現保存和存儲結果直到invocationEnded
。
報告部分結果的結果報告器
這種類型通常用於結果的流式處理,當結果被接收並立即推送到其他地方時。例如,將結果記錄到控制台的報告器就是這種類型。
此類型特定於事件需要哪種類型的處理,因此實現基本接口通常是推薦的方式。
XML 配置
對象標記將是result_reporter
。例如:
<result_reporter class="com.android.tradefed.result.ConsoleResultReporter">
<option name="suppress-passed-tests" value="true"/>
</result_reporter>
這個頁面中的內容和程式碼範例均受《內容授權》中的授權所規範。Java 與 OpenJDK 是 Oracle 和/或其關係企業的商標或註冊商標。
上次更新時間:2022-06-06 (世界標準時間)。
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"缺少我需要的資訊"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"過於複雜/步驟過多"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"過時"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻譯問題"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"示例/程式碼問題"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"其他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"容易理解"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"確實解決了我的問題"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"其他"
}]
{"lastModified": "\u4e0a\u6b21\u66f4\u65b0\u6642\u9593\uff1a2022-06-06 (\u4e16\u754c\u6a19\u6e96\u6642\u9593)\u3002"}
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2022-06-06 (世界標準時間)。"]]