TestTimeoutEnforcer

public final class TestTimeoutEnforcer
extends ResultForwarder

java.lang.Object
   ↳ com.android.tradefed.result.ResultForwarder
     ↳ com.android.tradefed.testtype.TestTimeoutEnforcer


可以檢查指定測試案例的執行時間的接聽程式,如果失敗就會失敗 超過 30%

請注意,這項強制執行工具不會中斷測試,但會導致測試失敗。

摘要

欄位

public static final String TEST_CASE_TIMEOUT_DESCRIPTION

public static final String TEST_CASE_TIMEOUT_OPTION

公用建構函式

TestTimeoutEnforcer(long perTestCaseTimeout, TimeUnit unit, ITestInvocationListener... listeners)

建立具有指定逾時的 TestTimeoutEnforcer 即可強制執行。

TestTimeoutEnforcer(long perTestCaseTimeout, TimeUnit unit, listeners)

建立具有指定逾時的 TestTimeoutEnforcer 即可強制執行。

公用方法

void testAssumptionFailure(TestDescription test, FailureDescription failure)

在不可部分完成的測試旗標假設條件為 false 時呼叫

void testAssumptionFailure(TestDescription test, String trace)

在不可部分完成的測試旗標假設條件為 false 時呼叫

void testEnded(TestDescription test, long endTime, testMetrics)

ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) 的替代方式,可以指定結束時間

void testFailed(TestDescription test, FailureDescription failure)

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

void testFailed(TestDescription test, String trace)

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

void testIgnored(TestDescription test)

在測試不執行時呼叫的呼叫,通常是因為測試方法加上了 org.junit.Ignore

void testStarted(TestDescription test, long startTime)

testStarted(com.android.tradefed.result.TestDescription) 的替代方式,我們會一併指定測試的時間 再加上 ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)),才能取得準確的測量結果

欄位

TEST_CASE_TIMEOUT_DESCRIPTION

public static final String TEST_CASE_TIMEOUT_DESCRIPTION

TEST_CASE_TIMEOUT_OPTION

public static final String TEST_CASE_TIMEOUT_OPTION

公用建構函式

TestTimeoutEnforcer

public TestTimeoutEnforcer (long perTestCaseTimeout, 
                TimeUnit unit, 
                ITestInvocationListener... listeners)

建立具有指定逾時的 TestTimeoutEnforcer 即可強制執行。

參數
perTestCaseTimeout long:逾時的值。

unit TimeUnit:perTestCaseTimeout 的 ERROR(/TimeUnit)

listeners ITestInvocationListener:轉寄至的 ITestInvocationListener

TestTimeoutEnforcer

public TestTimeoutEnforcer (long perTestCaseTimeout, 
                TimeUnit unit, 
                 listeners)

建立具有指定逾時的 TestTimeoutEnforcer 即可強制執行。

參數
perTestCaseTimeout long:逾時的值。

unit TimeUnit:perTestCaseTimeout 的 ERROR(/TimeUnit)

listeners :轉寄至的 ITestInvocationListener

公用方法

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

在不可部分完成的測試旗標假設條件為 false 時呼叫

參數
test TestDescription:識別測試

failure FailureDescriptionFailureDescription,說明失敗及其背景資訊。

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                String trace)

在不可部分完成的測試旗標假設條件為 false 時呼叫

參數
test TestDescription:識別測試

trace String:失敗的堆疊追蹤

測試結束

public void testEnded (TestDescription test, 
                long endTime, 
                 testMetrics)

ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) 的替代方式,可以指定結束時間 搭配 testStarted(com.android.tradefed.result.TestDescription, long) 即可取得準確的測量結果。

參數
test TestDescription:識別測試

endTime long:測試結束的時間,透過 System.currentTimeMillis() 進行評估

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

測試失敗

public void testFailed (TestDescription test, 
                FailureDescription failure)

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

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

參數
test TestDescription:識別測試

failure FailureDescriptionFailureDescription,說明失敗及其背景資訊。

測試失敗

public void testFailed (TestDescription test, 
                String trace)

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

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

參數
test TestDescription:識別測試

trace String:失敗的堆疊追蹤

已忽略測試

public void testIgnored (TestDescription test)

在測試不執行時呼叫的呼叫,通常是因為測試方法加上了 org.junit.Ignore

參數
test TestDescription:識別測試

testStarted

public void testStarted (TestDescription test, 
                long startTime)

testStarted(com.android.tradefed.result.TestDescription) 的替代方式,我們會一併指定測試的時間 再加上 ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)),才能取得準確的測量結果

參數
test TestDescription:識別測試

startTime long:測試開始的時間,透過 System.currentTimeMillis() 進行測量