調用到JUnitResultForwarder

public class InvocationToJUnitResultForwarder
extends Object implements ITestInvocationListener

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


偵聽ITestInvocationListener事件並將其轉發到TestListener類。

概括

公共構造函數

InvocationToJUnitResultForwarder (TestListener junitListener)

公共方法

TestSummary getSummary ()

允許 IncationListener 返回摘要。

void invocationEnded (long elapsedTime)

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

void invocationFailed (Throwable cause)

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

void invocationStarted ( IInvocationContext context)

報告測試調用的開始。

void testAssumptionFailure ( TestDescription testId, String trace)

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

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

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

void testFailed ( TestDescription testId, String trace)

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

void testIgnored ( TestDescription test)

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

void testLog (String dataName, LogDataType logData, 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)

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

受保護的方法

TestListener getJUnitListener ()

公共構造函數

調用到JUnitResultForwarder

public InvocationToJUnitResultForwarder (TestListener junitListener)

參數
junitListener TestListener

公共方法

獲取摘要

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 testId, 
                String trace)

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

參數
testId TestDescription :標識測試

trace String : 失敗的堆棧跟踪

測試結束

public void testEnded (TestDescription test, 
                 testMetrics)

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

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

參數
test TestDescription :標識測試

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

測試失敗

public void testFailed (TestDescription testId, 
                String trace)

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

將在 testStarted 和 testEnded 之間調用。

參數
testId TestDescription :標識測試

trace String : 失敗的堆棧跟踪

測試被忽略

public void testIgnored (TestDescription test)

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

參數
test TestDescription :標識測試

測試日誌

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

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

必須在ERROR(/ITestInvocationListener#invocationFailed(Throwable))ERROR(/ITestInvocationListener#invocationEnded(long))之前調用

TradeFederation 框架將自動調用此方法,提供主機日誌和設備 logcat(如果適用)。

參數
dataName String :數據的String描述性名稱。例如“device_logcat”。注意 每次調用時 dataName 可能不是唯一的。即實現者必須能夠處理具有相同 dataName 的多個調用

logData 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 :標識測試

受保護的方法

獲取JUnitListener

protected TestListener getJUnitListener ()

退貨
TestListener