名稱MangleListener

public abstract class NameMangleListener
extends Object implements ITestInvocationListener

java.lang.Object
com.android.tradefed.result.NameMangleListener


代理偵聽器,用於在報告結果時翻譯測試方法、類和包名稱。

概括

公共構造函數

NameMangleListener ( ITestInvocationListener listener)

公共方法

TestSummary getSummary ()

允許 IncationListener 返回摘要。

void invocationEnded (long elapsedTime)

報告調用已終止,無論是成功還是由於某些錯誤情況。

void invocationFailed (Throwable cause)

由於某些錯誤情況而報告不完整的調用。

void invocationStarted ( IInvocationContext context)

報告測試調用的開始。

void testAssumptionFailure ( TestDescription test, String trace)

當原子測試標記其假定條件為 false 時調用

void testEnded ( TestDescription test, testMetrics) testEnded ( TestDescription test, testMetrics)

報告單個測試用例的執行結束。

void testFailed ( TestDescription test, String trace)

報告單個測試用例的失敗。

void testIgnored ( TestDescription test)

當測試不會運行時調用,通常是因為測試方法用 org.junit.Ignore 註解。

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

提供來自測試調用的關聯日誌或調試數據。

void testRunEnded (long elapsedTime, runMetrics) testRunEnded (long elapsedTime, runMetrics)

報告測試運行結束。

void testRunFailed (String errorMessage)

報告測試運行由於致命錯誤而未能完成。

void testRunStarted (String runName, int testCount)

報告測試運行的開始。

void testRunStopped (long elapsedTime)

由於用戶請求,報告測試運行在完成之前停止。

void testStarted ( TestDescription test)

報告單個測試用例的開始。

受保護的方法

TestDescription mangleTestId ( TestDescription test)

此方法在傳遞給TestDescription testStarted(com.android.tradefed.result.TestDescription)testFailed(com.android.tradefed.result.TestDescription, String)ERROR(/#testEnded(com.android.tradefed.result.TestDescription,HashMap))回調。

String mangleTestRunName (String name)

此方法在傳遞給testRunStarted(String, int)回調的所有測試運行名稱上運行。

公共構造函數

名稱MangleListener

public NameMangleListener (ITestInvocationListener listener)

參數
listener ITestInvocationListener

公共方法

獲取摘要

public TestSummary getSummary ()

允許 IncationListener 返回摘要。

退貨
TestSummary總結運行的TestSummary ,或 null

調用結束

public void invocationEnded (long elapsedTime)

報告調用已終止,無論是成功還是由於某些錯誤情況。

將由 TradeFederation 框架自動調用。

參數
elapsedTime long :調用所用的時間(以毫秒為單位)

調用失敗

public void invocationFailed (Throwable cause)

由於某些錯誤情況而報告不完整的調用。

將由 TradeFederation 框架自動調用。

參數
cause Throwable :失敗的Throwable原因

調用開始

public void invocationStarted (IInvocationContext context)

報告測試調用的開始。

將由 TradeFederation 框架自動調用。記者需要重寫此方法以支持多設備報告。

參數
context IInvocationContext :有關調用的信息

測試假設失敗

public void testAssumptionFailure (TestDescription test, 
                String trace)

當原子測試標記其假定條件為 false 時調用

參數
test TestDescription :標識測試

trace String : 失敗的堆棧跟踪

測試結束

public void testEnded (TestDescription test, 
                 testMetrics)

報告單個測試用例的執行結束。

如果未調用testFailed(TestDescription, FailureDescription) ,則此測試通過。還返回測試用例執行期間可能發出的任何鍵/值指標。

參數
test TestDescription :標識測試

testMetrics :發出的指標的ERROR(/Map)

測試失敗

public void testFailed (TestDescription test, 
                String trace)

報告單個測試用例的失敗。

將在 testStarted 和 testEnded 之間調用。

參數
test TestDescription :標識測試

trace String : 失敗的堆棧跟踪

測試被忽略

public void testIgnored (TestDescription test)

當測試不會運行時調用,通常是因為測試方法用 org.junit.Ignore 註解。

參數
test TestDescription :標識測試

測試日誌

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 方法完成。

測試運行結束

public void testRunEnded (long elapsedTime, 
                 runMetrics)

報告測試運行結束。 FIXME:我們不能有兩個不同類型的 Map<> 接口,所以我們必須在這裡使用 HashMap。

參數
elapsedTime long :設備報告的經過時間,以毫秒為單位

runMetrics :使用Metric測試運行結束時報告的鍵值對。

測試運行失敗

public void testRunFailed (String errorMessage)

報告測試運行由於致命錯誤而未能完成。

參數
errorMessage String :描述運行失敗原因的String

測試運行開始

public void testRunStarted (String runName, 
                int testCount)

報告測試運行的開始。

參數
runName String : 測試運行名稱

testCount int : 測試運行中的測試總數

測試運行停止

public void testRunStopped (long elapsedTime)

由於用戶請求,報告測試運行在完成之前停止。

TODO:當前未使用,考慮刪除

參數
elapsedTime long :設備報告的經過時間,以毫秒為單位

測試開始

public void testStarted (TestDescription test)

報告單個測試用例的開始。較舊的接口,應盡可能使用testStarted(com.android.tradefed.result.TestDescription)

參數
test TestDescription :標識測試

受保護的方法

mangle測試ID

protected TestDescription mangleTestId (TestDescription test)

此方法在傳遞給TestDescription testStarted(com.android.tradefed.result.TestDescription)testFailed(com.android.tradefed.result.TestDescription, String)ERROR(/#testEnded(com.android.tradefed.result.TestDescription,HashMap))回調。該方法應返回一個可能不同的TestDescription ,該 TestDescription 將被傳遞給在構造期間指定的下游ITestInvocationListener

實現時應注意不要修改原始TestDescription

默認實現不加修改地傳遞傳入標識符。

參數
test TestDescription

退貨
TestDescription

mangle測試運行名稱

protected String mangleTestRunName (String name)

此方法在傳遞給testRunStarted(String, int)回調的所有測試運行名稱上運行。該方法應返回一個可能不同的測試運行名稱,該名稱將傳遞給在構造期間指定的下游ITestInvocationListener

實現時要注意不要修改原來的運行名稱。

默認實現不加修改地傳遞傳入的測試運行名稱。

參數
name String

退貨
String