GranularRetriableTestWrapper
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 是自定义的重试次数上限。
摘要
嵌套类 | |
---|---|
class |
GranularRetriableTestWrapper.StartEndCollector
用于捕获缺失的运行开始和结束时间的类辅助程序。 |
公共构造函数 | |
---|---|
GranularRetriableTestWrapper(IRemoteTest test, ITestInvocationListener mainListener,
|
|
GranularRetriableTestWrapper(IRemoteTest test, ModuleDefinition module, ITestInvocationListener mainListener,
|
公共构造函数
GranularRetriableTestWrapper
public GranularRetriableTestWrapper (IRemoteTest test, ITestInvocationListener mainListener,moduleLevelListeners, int maxRunLimit)
参数 | |
---|---|
test |
IRemoteTest |
mainListener |
ITestInvocationListener |
moduleLevelListeners |
|
maxRunLimit |
int |
GranularRetriableTestWrapper
public GranularRetriableTestWrapper (IRemoteTest test, ModuleDefinition module, ITestInvocationListener mainListener,moduleLevelListeners, int maxRunLimit)
参数 | |
---|---|
test |
IRemoteTest |
module |
ModuleDefinition |
mainListener |
ITestInvocationListener |
moduleLevelListeners |
|
maxRunLimit |
int |
公共方法
getExpectedTestsCount
public final int getExpectedTestsCount ()
计算 IRemoteTest
中的测试用例数量。此值用于区分多次重新调度的同一测试用例。
返回 | |
---|---|
int |
getFinalTestRunResults
public finalgetFinalTestRunResults ()
从每次 IRemoteTest
运行中获取合并的 TestRunResult。
返回 | |
---|---|
|
getPassedTests
public finalgetPassedTests ()
返回 | |
---|---|
|
getRetryCount
public int getRetryCount ()
返回 | |
---|---|
int |
得分
public void run (TestInformation testInfo, ITestInvocationListener listener)
安排一系列 IRemoteTest.run(TestInformation, ITestInvocationListener)
。
参数 | |
---|---|
testInfo |
TestInformation :包含运行测试的实用信息的 TestInformation 对象。 |
listener |
ITestInvocationListener :ResultForwarder 监听器,其中包含每次运行时的新 moduleListener。 |
抛出 | |
---|---|
DeviceNotAvailableException |
setCollectTestsOnly
public void setCollectTestsOnly (boolean shouldCollectTest)
启用或停用测试集合模式
setInvocationContext
public void setInvocationContext (IInvocationContext moduleInvocationContext)
将 IInvocationContext
设置为 GranularRetriableTestWrapper
属性。
参数 | |
---|---|
moduleInvocationContext |
IInvocationContext :封装容器会在必要时使用 InvocationContext 初始化 MetricCollector。 |
setLogSaver
public void setLogSaver (ILogSaver logSaver)
将模块的 ILogSaver
设置为 GranularRetriableTestWrapper
属性。
参数 | |
---|---|
logSaver |
ILogSaver :每个测试运行的监听器都应保存日志。 |
setMarkTestsSkipped
public void setMarkTestsSkipped (boolean skipTestCases)
将 ModuleDefinition
RunStrategy 设置为 GranularRetriableTestWrapper
属性。
参数 | |
---|---|
skipTestCases |
boolean :是否应跳过测试用例。 |
setMetricCollectors
public void setMetricCollectors (runMetricCollectors)
将 ModuleDefinition
的 runMetricCollector 设置为 GranularRetriableTestWrapper
属性。
参数 | |
---|---|
runMetricCollectors |
:模块的 MetricCollector 列表。 |
setModuleConfig
public void setModuleConfig (IConfiguration moduleConfiguration)
将 ModuleDefinition
的 ModuleConfig 设置为 GranularRetriableTestWrapper
属性。
参数 | |
---|---|
moduleConfiguration |
IConfiguration :提供模块指标。 |
setModuleId
public void setModuleId (String moduleId)
将 ModuleDefinition
名称设置为 GranularRetriableTestWrapper
属性。
参数 | |
---|---|
moduleId |
String :moduleDefinition 的名称。 |
setRetryDecision
public void setRetryDecision (IRetryDecision decision)
设置要使用的 IRetryDecision
。
参数 | |
---|---|
decision |
IRetryDecision |