IInvocationExecution
public
interface
IInvocationExecution
| com.android.tradefed.invoker.IInvocationExecution |
用于描述在调用过程中将执行的操作的接口。调用 TestInvocation 本身可确保调用顺序。
摘要
公共方法 | |
|---|---|
default
void
|
cleanUpBuilds(IInvocationContext context, IConfiguration config)
执行 build_provider 清理步骤。 |
default
void
|
doCleanUp(IInvocationContext context, IConfiguration config, Throwable exception)
执行 target_preparer 和 multi_target_preparer cleanUp 步骤。 |
default
void
|
doSetup(TestInformation testInfo, IConfiguration config, ITestLogger logger)
执行 target_preparer 和 multi_target_preparer setUp 步骤。 |
default
void
|
doTeardown(TestInformation testInfo, IConfiguration config, ITestLogger logger, Throwable exception)
执行 target_preparer 和 multi_target_preparer 拆解步骤。 |
default
boolean
|
fetchBuild(TestInformation testInfo, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener)
执行调用的 build_provider 步骤。 |
abstract
void
|
reportLogs(ITestDevice device, ITestLogger logger, TestInvocation.Stage stage)
在调用的不同阶段报告一些设备日志。 |
default
void
|
runDevicePostInvocationTearDown(IInvocationContext context, IConfiguration config, Throwable exception)
针对调用的每个设备部分调用 |
default
void
|
runDevicePreInvocationSetup(IInvocationContext context, IConfiguration config, ITestLogger logger)
|
default
void
|
runTests(TestInformation info, IConfiguration config, ITestInvocationListener listener)
运行测试。 |
default
boolean
|
shardConfig(IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
尝试将配置分片为子配置,以便重新安排在多个资源上并行运行。 |
公共方法
cleanUpBuilds
public void cleanUpBuilds (IInvocationContext context, IConfiguration config)
执行 build_provider 清理步骤。与 build 获取相关。
| 参数 | |
|---|---|
context |
IInvocationContext:调用的 IInvocationContext。 |
config |
IConfiguration:相应测试运行的 IConfiguration。 |
doCleanUp
public void doCleanUp (IInvocationContext context, IConfiguration config, Throwable exception)
执行 target_preparer 和 multi_target_preparer cleanUp 步骤。设备是否清理干净。
| 参数 | |
|---|---|
context |
IInvocationContext:调用的 IInvocationContext。 |
config |
IConfiguration:相应测试运行的 IConfiguration。 |
exception |
Throwable:测试运行抛出的原始异常。 |
doSetup
public void doSetup (TestInformation testInfo, IConfiguration config, ITestLogger logger)
执行 target_preparer 和 multi_target_preparer setUp 步骤。设置运行测试所需的所有设备。
| 参数 | |
|---|---|
testInfo |
TestInformation:调用的 TestInformation。 |
config |
IConfiguration:相应测试运行的 IConfiguration。 |
logger |
ITestLogger:用于报告设置失败日志的 ITestLogger。 |
| 抛出 | |
|---|---|
|
com.android.tradefed.device.DeviceNotAvailableException |
|
com.android.tradefed.targetprep.BuildError |
|
com.android.tradefed.targetprep.TargetSetupError |
BuildError |
|
DeviceNotAvailableException |
|
TargetSetupError |
|
doTeardown
public void doTeardown (TestInformation testInfo, IConfiguration config, ITestLogger logger, Throwable exception)
执行 target_preparer 和 multi_target_preparer 拆解步骤。拆除与设置关联的设备。
| 参数 | |
|---|---|
testInfo |
TestInformation:调用的 TestInformation。 |
config |
IConfiguration:相应测试运行的 IConfiguration。 |
logger |
ITestLogger:用于报告日志的 ITestLogger。 |
exception |
Throwable:测试运行抛出的原始异常。 |
| 抛出 | |
|---|---|
|
java.lang.Throwable |
Throwable |
|
fetchBuild
public boolean fetchBuild (TestInformation testInfo, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener)
执行调用的 build_provider 步骤。
| 参数 | |
|---|---|
testInfo |
TestInformation:调用的 TestInformation。 |
config |
IConfiguration:相应测试运行的 IConfiguration。 |
rescheduler |
IRescheduler:IRescheduler,用于重新安排部分调用的执行时间,以便在其他资源上执行 |
listener |
ITestInvocationListener:用于报告 build 下载失败的 ITestInvocation。 |
| 返回 | |
|---|---|
boolean |
如果我们成功下载了 build,则为 true,否则为 false。 |
| 抛出 | |
|---|---|
|
com.android.tradefed.build.BuildRetrievalError |
|
com.android.tradefed.device.DeviceNotAvailableException |
BuildRetrievalError |
|
DeviceNotAvailableException |
|
reportLogs
public abstract void reportLogs (ITestDevice device, ITestLogger logger, TestInvocation.Stage stage)
在调用的不同阶段报告一些设备日志。例如:logcat。
| 参数 | |
|---|---|
device |
ITestDevice:要报告日志的设备。 |
logger |
ITestLogger:日志记录器。 |
stage |
TestInvocation.Stage:我们所处的调用阶段。 |
runDevicePostInvocationTearDown
public void runDevicePostInvocationTearDown (IInvocationContext context, IConfiguration config, Throwable exception)
针对调用的每个设备部分调用 ITestDevice.postInvocationTearDown(Throwable)。
| 参数 | |
|---|---|
context |
IInvocationContext:调用的 IInvocationContext。 |
config |
IConfiguration:相应测试运行的 IConfiguration。 |
exception |
Throwable:测试运行抛出的原始异常(如果有)。 |
runDevicePreInvocationSetup
public void runDevicePreInvocationSetup (IInvocationContext context, IConfiguration config, ITestLogger logger)
| 参数 | |
|---|---|
context |
IInvocationContext:调用的 IInvocationContext。 |
config |
IConfiguration:相应测试运行的 IConfiguration。 |
logger |
ITestLogger:用于报告日志的 ITestLogger。 |
| 抛出 | |
|---|---|
|
com.android.tradefed.device.DeviceNotAvailableException |
|
com.android.tradefed.targetprep.TargetSetupError |
DeviceNotAvailableException |
|
TargetSetupError |
|
runTests
public void runTests (TestInformation info, IConfiguration config, ITestInvocationListener listener)
运行测试。
| 参数 | |
|---|---|
info |
TestInformation:用于运行测试的 TestInformation。 |
config |
IConfiguration:要运行的 IConfiguration |
listener |
ITestInvocationListener:测试结果的 ITestInvocationListener |
| 抛出 | |
|---|---|
|
java.lang.Throwable |
Throwable |
|
shardConfig
public boolean shardConfig (IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
尝试将配置分片为子配置,以便重新安排在多个资源上并行运行。
如果分片数大于 1,它将通过设置分片索引并重新安排分片来为每个分片创建配置。如果未设置分片数,则会回退到 IShardHelper.shardConfig。
| 参数 | |
|---|---|
config |
IConfiguration:当前的 IConfiguration。 |
testInfo |
TestInformation:包含测试信息的 TestInformation。 |
rescheduler |
IRescheduler:IRescheduler。 |
logger |
ITestLogger:用于在分片期间记录文件的 ITestLogger。 |
| 返回 | |
|---|---|
boolean |
如果测试已分片,则为 true。否则返回 false |