调用执行
public class InvocationExecution
extends Object
implements IInvocationExecution
对象 | |
↳ | com.android.tradefed.invoker.InvocationExecution |
描述所有调用步骤的类:构建下载、target_prep、运行测试、清理。可以扩展以覆盖某些步骤的默认行为。步骤顺序是由驱动TestInvocation
。
概括
字段 | |
---|---|
public static final String | ADB_VERSION_KEY |
public static final String | JAVA_CLASSPATH_KEY |
public static final String | JAVA_VERSION_KEY
|
公共构造函数 | |
---|---|
InvocationExecution () |
公共方法 | |
---|---|
void | cleanUpBuilds (IInvocationContext context, IConfiguration config) 执行 build_provider 清理步骤。 |
void | doCleanUp (IInvocationContext context, IConfiguration config, Throwable exception) 执行 target_preparer 和 multi_target_preparer 清理步骤。 |
void | doSetup (TestInformation testInfo, IConfiguration config, ITestLogger listener) 执行 target_preparer 和 multi_target_preparer 设置步骤。 |
void | doTeardown (TestInformation testInfo, IConfiguration config, ITestLogger logger, Throwable exception) 执行 target_preparer 和 multi_target_preparer 拆卸步骤。 |
boolean | fetchBuild (TestInformation testInfo, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener) 执行调用的 build_provider 步骤。 |
void | reportLogs (ITestDevice device, ITestLogger listener, TestInvocation.Stage stage) 在调用的不同阶段报告一些设备日志。 |
void | runDevicePostInvocationTearDown (IInvocationContext context, IConfiguration config, Throwable exception) 调用 |
void | runDevicePreInvocationSetup (IInvocationContext context, IConfiguration config, ITestLogger logger) |
void | runTests (TestInformation info, IConfiguration config, ITestInvocationListener listener) 运行测试。 |
boolean | shardConfig ( IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger) 尝试将配置分片为子配置,重新安排在多个资源上并行运行。 |
受保护的方法 | |
---|---|
void | collectAutoInfo ( IConfiguration config, TestInformation info) 自动收集有关被测主设备的一些信息。 |
IShardHelper | createShardHelper () 创建一个回报 |
void | customizeDevicePreInvocation ( IConfiguration config, IInvocationContext context) 在 preInvocationSetup 之前给一些自定义设备的机会。 |
String | getAdbVersion () 返回用于调用的 adb 版本。 |
getPreparersToRun ( IConfiguration config, String deviceName) 检索要在此设备上运行的准备程序列表。 | |
void | logHostAdb ( IConfiguration config, ITestLogger logger) 从 $TMPDIR/adb.$UID.log 收集日志。 |
void | runPreparersSetup (TestInformation testInfo, IConfiguration config, ITestLogger listener) |
Throwable | runPreparersTearDown (TestInformation testInfo, ITestDevice device, String deviceName, int deviceIndex, ITestLogger logger, Throwable exception, preparersToRun) runPreparersTearDown (TestInformation testInfo, ITestDevice device, String deviceName, int deviceIndex, ITestLogger logger, Throwable exception, preparersToRun) |
void | setTestTag (IBuildInfo info, IConfiguration config) 处理在构建信息上设置测试标签。 |
字段
ADB_VERSION_KEY
public static final String ADB_VERSION_KEY
JAVA_CLASSPATH_KEY
public static final String JAVA_CLASSPATH_KEY
JAVA_VERSION_KEY
public static final String JAVA_VERSION_KEY
公共构造函数
调用执行
public InvocationExecution ()
公共方法
清理构建
public void cleanUpBuilds (IInvocationContext context, IConfiguration config)
执行 build_provider 清理步骤。与构建获取相关联。
参数 | |
---|---|
context | IInvocationContext :在IInvocationContext 调用的。 |
config | IConfiguration :在IConfiguration 此试运行。 |
清理
public void doCleanUp (IInvocationContext context, IConfiguration config, Throwable exception)
执行 target_preparer 和 multi_target_preparer 清理步骤。设备是否清理。
参数 | |
---|---|
context | IInvocationContext :在IInvocationContext 调用的。 |
config | IConfiguration :在IConfiguration 此试运行。 |
exception | Throwable :原始异常由试运行抛出。 |
设置
public void doSetup (TestInformation testInfo, IConfiguration config, ITestLogger listener)
执行 target_preparer 和 multi_target_preparer 设置步骤。是否设置了测试运行所需的所有设备。
参数 | |
---|---|
testInfo | TestInformation :在TestInformation 调用的。 |
config | IConfiguration :在IConfiguration 此试运行。 |
listener | ITestLogger :在ITestLogger 报告建立故障日志。 |
投掷 | |
---|---|
BuildError | |
DeviceNotAvailableException | |
TargetSetupError |
拆解
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 :原始异常由试运行抛出。 |
获取构建
public boolean fetchBuild (TestInformation testInfo, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener)
执行调用的 build_provider 步骤。
参数 | |
---|---|
testInfo | TestInformation :在TestInformation 调用的。 |
config | IConfiguration :在IConfiguration 此试运行。 |
rescheduler | IRescheduler :所述IRescheduler ,用于在另一资源上重新调度的调用来执行的部分(S) |
listener | ITestInvocationListener :在ITestInvocation 到报告生成下载失败。 |
退货 | |
---|---|
boolean | 如果我们成功下载了构建,则为 true,否则为 false。 |
投掷 | |
---|---|
BuildRetrievalError | |
DeviceNotAvailableException |
报告日志
public void reportLogs (ITestDevice device, ITestLogger listener, TestInvocation.Stage stage)
在调用的不同阶段报告一些设备日志。例如:logcat。
参数 | |
---|---|
device | ITestDevice :设备从报告日志。 |
listener | ITestLogger :这些日志的记录。 |
stage | TestInvocation.Stage :调用我们正处于的阶段。 |
运行DevicePostInvocationTearDown
public void runDevicePostInvocationTearDown (IInvocationContext context, IConfiguration config, Throwable exception)
调用ITestDevice#postInvocationTearDown(Throwable)
用于调用每个设备的一部分。
参数 | |
---|---|
context | IInvocationContext :在IInvocationContext 调用的。 |
config | IConfiguration :在IConfiguration 此试运行。 |
exception | Throwable :原始异常由试运行,如果任何异常。 |
运行DevicePreInvocationSetup
public void runDevicePreInvocationSetup (IInvocationContext context, IConfiguration config, ITestLogger logger)
参数 | |
---|---|
context | IInvocationContext :在IInvocationContext 调用的。 |
config | IConfiguration :在IConfiguration 此试运行。 |
logger | ITestLogger :在ITestLogger 报告日志。 |
投掷 | |
---|---|
DeviceNotAvailableException | |
TargetSetupError |
运行测试
public void runTests (TestInformation info, IConfiguration config, ITestInvocationListener listener)
运行测试。
参数 | |
---|---|
info | TestInformation :在TestInformation 与运行测试。 |
config | IConfiguration :在IConfiguration 来运行 |
listener | ITestInvocationListener :在ITestInvocationListener 测试结果 |
分片配置
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 | 如果测试被分片,则为真。否则返回false |
受保护的方法
收集汽车信息
protected void collectAutoInfo (IConfiguration config, TestInformation info)
自动收集有关被测主设备的一些信息。
参数 | |
---|---|
config | IConfiguration |
info | TestInformation |
投掷 | |
---|---|
DeviceNotAvailableException |
自定义设备预调用
protected void customizeDevicePreInvocation (IConfiguration config, IInvocationContext context)
在 preInvocationSetup 之前给一些自定义设备的机会。
参数 | |
---|---|
config | IConfiguration :调用的配置。 |
context | IInvocationContext :当前调用上下文。 |
获取Adb版本
protected String getAdbVersion ()
返回用于调用的 adb 版本。
退货 | |
---|---|
String |
getPreparersToRun
protectedgetPreparersToRun (IConfiguration config, String deviceName)
检索要在此设备上运行的准备程序列表。
在沙盒类中重写以限制实验室准备者在沙盒子类中运行
参数 | |
---|---|
config | IConfiguration |
deviceName | String |
退货 | |
---|---|
日志主机Adb
protected void logHostAdb (IConfiguration config, ITestLogger logger)
从 $TMPDIR/adb.$UID.log 收集日志。
参数 | |
---|---|
config | IConfiguration |
logger | ITestLogger |
运行PreparersSetup
protected void runPreparersSetup (TestInformation testInfo, IConfiguration config, ITestLogger listener)
参数 | |
---|---|
testInfo | TestInformation |
config | IConfiguration |
listener | ITestLogger |
投掷 | |
---|---|
BuildError | |
DeviceNotAvailableException | |
TargetSetupError |
runPreparersTearDown
protected Throwable runPreparersTearDown (TestInformation testInfo, ITestDevice device, String deviceName, int deviceIndex, ITestLogger logger, Throwable exception,preparersToRun)
参数 | |
---|---|
testInfo | TestInformation |
device | ITestDevice |
deviceName | String |
deviceIndex | int |
logger | ITestLogger |
exception | Throwable |
preparersToRun |
退货 | |
---|---|
Throwable |
设置测试标签
protected void setTestTag (IBuildInfo info, IConfiguration config)
处理在构建信息上设置测试标签。
参数 | |
---|---|
info | IBuildInfo |
config | IConfiguration |