XmlResultReporter

public class XmlResultReporter
extends CollectingTestListener implements ILogSaverListener

java.lang.Object
   ↳ com.android.tradefed.result.CollectingTestListener
     ↳ com.android.tradefed.result.XmlResultReporter


這個外掛程式能使用 Ant 的 XMLJUnitResultFormatter。

與 Ant 的格式化工具不同,這個類別不會回報測試的執行時間。

收集記憶體中的所有測試資訊,然後在叫用完成時轉存至檔案。

從 Dalvik 執行器 XmlReportPrinter 移植而來。

結果檔案會儲存在透過 [--output-file-path]/[build_id] 建構的路徑中

摘要

公用建構函式

XmlResultReporter()

公用方法

void invocationEnded(long elapsedTime)

回報叫用已終止 (無論成功或因某些錯誤而終止) 值。

void setLogSaver(ILogSaver logSaver)

設定 ILogSaver,允許實作器儲存檔案。

void testFailed(TestDescription test, String trace)

回報個別測試案例的失敗情形。

void testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)

提供測試叫用作業的相關記錄或偵錯資料。

void testLogSaved(String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)

儲存測試記錄時呼叫。

公用建構函式

XmlResultReporter

public XmlResultReporter ()

公用方法

invocationEnded

public void invocationEnded (long elapsedTime)

回報叫用已終止 (無論成功或因某些錯誤而終止) 值。

將由 TradeFederation 架構自動呼叫。

參數
elapsedTime long:叫用的經過時間 (以毫秒為單位)

setLogSaver

public void setLogSaver (ILogSaver logSaver)

設定 ILogSaver,允許實作者儲存檔案。

參數
logSaver ILogSaverILogSaver

測試失敗

public void testFailed (TestDescription test, 
                String trace)

回報個別測試案例的失敗情形。

這個值會在 testStarted 和 testEnded 之間呼叫。

參數
test TestDescription:用於識別測試

trace String:失敗的堆疊追蹤

測試記錄

public void testLog (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream)

提供測試叫用作業的相關記錄或偵錯資料。

必須在 ERROR(/ITestInvocationListener#invocationFailed(Throwable))ERROR(/ITestInvocationListener#invocationEnded(long)) 之前呼叫

TradeFederation 架構會自動呼叫這個方法,並提供主機記錄 裝置 logcat (如適用)

參數
dataName String:資料的 String 描述性名稱。例如:「device_logcat」。請注意,每個叫用動作的 dataName 可能不具唯一性。也就是說,實作者必須能夠處理具有相同 dataName 的多個呼叫

dataType LogDataType:資料的 LogDataType

dataStream InputStreamSource:資料的 InputStreamSource。實作者應呼叫 createInputStream 開始讀取資料,並確保在完成時關閉產生的 InputStream。呼叫端應確保資料來源在 testLog 方法完成前仍存在且可供存取。

testLog 已儲存

public void testLogSaved (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream, 
                LogFile logFile)

儲存測試記錄時呼叫。

應改用 ITestInvocationListener#testLog(String, LogDataType, InputStreamSource)

參數
dataName String:資料的 String 描述性名稱。例如:「device_logcat」。請注意,每個叫用作業的 dataName 可能不具唯一性。也就是說,實作者必須能夠處理多個具有相同 dataName 的呼叫

dataType LogDataType:資料的 LogDataType

dataStream InputStreamSource:資料的 InputStreamSource。實作者應呼叫 createInputStream 開始讀取資料,並確保在完成時關閉產生的 InputStream。

logFile LogFile:包含儲存檔案中繼資料的 LogFile