IInvocationExecution
public
interface
IInvocationExecution
| com.android.tradefed.invoker.IInvocationExecution |
Interface describing the actions that will be done as part of an invocation. The invocation
TestInvocation itself ensure the order of the calls.
Summary
Public methods | |
|---|---|
default
void
|
cleanUpBuilds(IInvocationContext context, IConfiguration config)
Execute the build_provider clean up step. |
default
void
|
doCleanUp(IInvocationContext context, IConfiguration config, Throwable exception)
Execute the target_preparer and multi_target_preparer cleanUp step. |
default
void
|
doSetup(TestInformation testInfo, IConfiguration config, ITestLogger logger)
Execute the target_preparer and multi_target_preparer setUp step. |
default
void
|
doTeardown(TestInformation testInfo, IConfiguration config, ITestLogger logger, Throwable exception)
Execute the target_preparer and multi_target_preparer teardown step. |
default
boolean
|
fetchBuild(TestInformation testInfo, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener)
Execute the build_provider step of the invocation. |
abstract
void
|
reportLogs(ITestDevice device, ITestLogger logger, TestInvocation.Stage stage)
Report some device logs at different stage of the invocation. |
default
void
|
runDevicePostInvocationTearDown(IInvocationContext context, IConfiguration config, Throwable exception)
Invoke the |
default
void
|
runDevicePreInvocationSetup(IInvocationContext context, IConfiguration config, ITestLogger logger)
Invoke the |
default
void
|
runTests(TestInformation info, IConfiguration config, ITestInvocationListener listener)
Runs the test. |
default
boolean
|
shardConfig(IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
Attempt to shard the configuration into sub-configurations, to be re-scheduled to run on multiple resources in parallel. |
Public methods
cleanUpBuilds
public void cleanUpBuilds (IInvocationContext context, IConfiguration config)
Execute the build_provider clean up step. Associated with the build fetching.
| Parameters | |
|---|---|
context |
IInvocationContext: the IInvocationContext of the invocation. |
config |
IConfiguration: the IConfiguration of this test run. |
doCleanUp
public void doCleanUp (IInvocationContext context, IConfiguration config, Throwable exception)
Execute the target_preparer and multi_target_preparer cleanUp step. Does the devices clean up.
| Parameters | |
|---|---|
context |
IInvocationContext: the IInvocationContext of the invocation. |
config |
IConfiguration: the IConfiguration of this test run. |
exception |
Throwable: the original exception thrown by the test running. |
doSetup
public void doSetup (TestInformation testInfo, IConfiguration config, ITestLogger logger)
Execute the target_preparer and multi_target_preparer setUp step. Does all the devices setup required for the test to run.
| Parameters | |
|---|---|
testInfo |
TestInformation: the TestInformation of the invocation. |
config |
IConfiguration: the IConfiguration of this test run. |
logger |
ITestLogger: the ITestLogger to report setup failures logs. |
| Throws | |
|---|---|
|
com.android.tradefed.targetprep.TargetSetupError |
|
com.android.tradefed.targetprep.BuildError |
|
com.android.tradefed.device.DeviceNotAvailableException |
BuildError |
|
DeviceNotAvailableException |
|
TargetSetupError |
|
doTeardown
public void doTeardown (TestInformation testInfo, IConfiguration config, ITestLogger logger, Throwable exception)
Execute the target_preparer and multi_target_preparer teardown step. Does the devices tear down associated with the setup.
| Parameters | |
|---|---|
testInfo |
TestInformation: the TestInformation of the invocation. |
config |
IConfiguration: the IConfiguration of this test run. |
logger |
ITestLogger: the ITestLogger to report logs. |
exception |
Throwable: the original exception thrown by the test running. |
| Throws | |
|---|---|
|
Throwable |
fetchBuild
public boolean fetchBuild (TestInformation testInfo, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener)
Execute the build_provider step of the invocation.
| Parameters | |
|---|---|
testInfo |
TestInformation: the TestInformation of the invocation. |
config |
IConfiguration: the IConfiguration of this test run. |
rescheduler |
IRescheduler: the IRescheduler, for rescheduling portions of the invocation for
execution on another resource(s) |
listener |
ITestInvocationListener: the ITestInvocation to report build download failures. |
| Returns | |
|---|---|
boolean |
True if we successfully downloaded the build, false otherwise. |
| Throws | |
|---|---|
|
com.android.tradefed.build.BuildRetrievalError |
|
com.android.tradefed.device.DeviceNotAvailableException |
BuildRetrievalError |
|
DeviceNotAvailableException |
|
reportLogs
public abstract void reportLogs (ITestDevice device, ITestLogger logger, TestInvocation.Stage stage)
Report some device logs at different stage of the invocation. For example: logcat.
| Parameters | |
|---|---|
device |
ITestDevice: The device to report logs from. |
logger |
ITestLogger: The logger for the logs. |
stage |
TestInvocation.Stage: The stage of the invocation we are at. |
runDevicePostInvocationTearDown
public void runDevicePostInvocationTearDown (IInvocationContext context, IConfiguration config, Throwable exception)
Invoke the ITestDevice.postInvocationTearDown(Throwable) for each device part of the
invocation.
| Parameters | |
|---|---|
context |
IInvocationContext: the IInvocationContext of the invocation. |
config |
IConfiguration: the IConfiguration of this test run. |
exception |
Throwable: the original exception thrown by the test running if any. |
runDevicePreInvocationSetup
public void runDevicePreInvocationSetup (IInvocationContext context, IConfiguration config, ITestLogger logger)
Invoke the ERROR(ITestDevice.preInvocationSetup(IBuildInfo)/com.android.tradefed.device.ITestDevice#preInvocationSetup(com.android.tradefed.build.IBuildInfo) ITestDevice.preInvocationSetup(IBuildInfo)) for each device part of the
invocation.
| Parameters | |
|---|---|
context |
IInvocationContext: the IInvocationContext of the invocation. |
config |
IConfiguration: the IConfiguration of this test run. |
logger |
ITestLogger: the ITestLogger to report logs. |
| Throws | |
|---|---|
|
com.android.tradefed.device.DeviceNotAvailableException |
|
com.android.tradefed.targetprep.TargetSetupError |
DeviceNotAvailableException |
|
TargetSetupError |
|
runTests
public void runTests (TestInformation info, IConfiguration config, ITestInvocationListener listener)
Runs the test.
| Parameters | |
|---|---|
info |
TestInformation: the TestInformation to run tests with. |
config |
IConfiguration: the IConfiguration to run |
listener |
ITestInvocationListener: the ITestInvocationListener of test results |
| Throws | |
|---|---|
|
Throwable |
shardConfig
public boolean shardConfig (IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
Attempt to shard the configuration into sub-configurations, to be re-scheduled to run on multiple resources in parallel.
If a shard count is greater than 1, it will simply create configs for each shard by
setting shard indices and reschedule them. If a shard count is not set,it would fallback to
IShardHelper.shardConfig.
| Parameters | |
|---|---|
config |
IConfiguration: the current IConfiguration. |
testInfo |
TestInformation: the TestInformation holding the info of the tests. |
rescheduler |
IRescheduler: the IRescheduler. |
logger |
ITestLogger: ITestLogger used to log file during sharding. |
| Returns | |
|---|---|
boolean |
true if test was sharded. Otherwise return false |