粒度可重試測試包裝器
public class GranularRetriableTestWrapper
extends Object
implements IRemoteTest, ITestCollector
java.lang.Object | |
↳ | com.android.tradefed.testtype.suite.GranularRetriableTestWrapper |
包裝類別在IRemoteTest
上工作,以在測試案例層級細化 IRemoteTest。 IRemoteTest 可以包含多個測試案例。以前,這些測試案例被視為一個整體:當 IRemoteTest 運行時,所有測試案例都將運行。某些 IRemoteTest(實作 ITestFilterReceiver 的 IRemoteTest)可以接受測試案例的白名單並只執行這些測試案例。此類利用現有功能並提供更靈活的方式來運行測試套件。
- 單一測試案例可以重試多次(在同一個 IRemoteTest 運行中)以降低非測試錯誤失敗率。
- 重試的測試案例是從先前的運行失敗中動態收集的。
筆記:
- 執行測試用範例集的先決條件是測試類型應實作
ITestFilterReceiver
介面。 - X是自訂的最大重試次數。
概括
公共構造函數 | |
---|---|
GranularRetriableTestWrapper (IRemoteTest test, ITestInvocationListener mainListener, TestFailureListener failureListener, moduleLevelListeners, int maxRunLimit) GranularRetriableTestWrapper (IRemoteTest test, ITestInvocationListener mainListener, TestFailureListener failureListener, moduleLevelListeners, int maxRunLimit) | |
GranularRetriableTestWrapper (IRemoteTest test, ModuleDefinition module, ITestInvocationListener mainListener, TestFailureListener failureListener, moduleLevelListeners, int maxRunLimit) GranularRetriableTestWrapper (IRemoteTest test, ModuleDefinition module, ITestInvocationListener mainListener, TestFailureListener failureListener, moduleLevelListeners, int maxRunLimit) |
公共方法 | |
---|---|
final int | getExpectedTestsCount () 計算 |
final | getFinalTestRunResults () 從每次 |
ModuleListener | getResultListener () 傳回包含所有結果的偵聽器。 |
void | run (TestInformation testInfo, ITestInvocationListener listener) 安排一系列 |
void | setCollectTestsOnly (boolean shouldCollectTest) 啟用或停用測試收集模式 |
void | setInvocationContext (IInvocationContext moduleInvocationContext) |
void | setLogSaver (ILogSaver logSaver) 將模組的 |
void | setMarkTestsSkipped (boolean skipTestCases) 將 |
void | setMetricCollectors ( runMetricCollectors) setMetricCollectors ( runMetricCollectors) 將 |
void | setModuleConfig ( IConfiguration moduleConfiguration) 將 |
void | setModuleId (String moduleId) |
void | setRetryDecision ( IRetryDecision decision) 設定要使用的 |
公共構造函數
粒度可重試測試包裝器
public GranularRetriableTestWrapper (IRemoteTest test, ITestInvocationListener mainListener, TestFailureListener failureListener,moduleLevelListeners, int maxRunLimit)
參數 | |
---|---|
test | IRemoteTest |
mainListener | ITestInvocationListener |
failureListener | TestFailureListener |
moduleLevelListeners | |
maxRunLimit | int |
粒度可重試測試包裝器
public GranularRetriableTestWrapper (IRemoteTest test, ModuleDefinition module, ITestInvocationListener mainListener, TestFailureListener failureListener,moduleLevelListeners, int maxRunLimit)
參數 | |
---|---|
test | IRemoteTest |
module | ModuleDefinition |
mainListener | ITestInvocationListener |
failureListener | TestFailureListener |
moduleLevelListeners | |
maxRunLimit | int |
公共方法
跑步
public void run (TestInformation testInfo, ITestInvocationListener listener)
安排一系列IRemoteTest#run(TestInformation, ITestInvocationListener)
。
參數 | |
---|---|
testInfo | TestInformation |
listener | ITestInvocationListener :ResultForwarder 偵聽器,每次運行都包含一個新的 moduleListener。 |
投擲 | |
---|---|
DeviceNotAvailableException |
僅設定收集測試
public void setCollectTestsOnly (boolean shouldCollectTest)
啟用或停用測試收集模式
設定呼叫上下文
public void setInvocationContext (IInvocationContext moduleInvocationContext)
將IInvocationContext
設定為GranularRetriableTestWrapper
屬性。
參數 | |
---|---|
moduleInvocationContext | IInvocationContext :包裝器在必要時使用 InitationContext 來初始化 MetricCollector。 |
設定日誌保存程序
public void setLogSaver (ILogSaver logSaver)
將模組的ILogSaver
設定為GranularRetriableTestWrapper
屬性。
參數 | |
---|---|
logSaver | ILogSaver :每次測試運行的偵聽器都應保存日誌。 |
設定跳過的標記測試
public void setMarkTestsSkipped (boolean skipTestCases)
將ModuleDefinition
RunStrategy 設定為GranularRetriableTestWrapper
屬性。
參數 | |
---|---|
skipTestCases | boolean :是否應跳過測試案例。 |
設定MetricCollectors
public void setMetricCollectors (runMetricCollectors)
將ModuleDefinition
的 runMetricCollector 設定為GranularRetriableTestWrapper
屬性。
參數 | |
---|---|
runMetricCollectors |
設定模組配置
public void setModuleConfig (IConfiguration moduleConfiguration)
將ModuleDefinition
的 ModuleConfig 設定為GranularRetriableTestWrapper
屬性。
參數 | |
---|---|
moduleConfiguration | IConfiguration :提供模組指標。 |
設定模組ID
public void setModuleId (String moduleId)
將ModuleDefinition
名稱設定為GranularRetriableTestWrapper
屬性。
參數 | |
---|---|
moduleId | String :模組定義的名稱。 |
設定重試決策
public void setRetryDecision (IRetryDecision decision)
設定要使用的IRetryDecision
。
參數 | |
---|---|
decision | IRetryDecision |