InvocationExecution
public
class
InvocationExecution
extends Object
implements
IInvocationExecution
java.lang.Object | |
↳ | com.android.tradefed.invoker.InvocationExecution |
Class that describes all the invocation steps: build download, target_prep, run tests, clean up.
Can be extended to override the default behavior of some steps. Order of the steps is driven by
TestInvocation
.
Summary
Public constructors | |
---|---|
InvocationExecution()
|
Public methods | |
---|---|
void
|
cleanUpBuilds(IInvocationContext context, IConfiguration config)
Execute the build_provider clean up step. |
void
|
doCleanUp(IInvocationContext context, IConfiguration config, Throwable exception)
Execute the target_preparer and multi_target_preparer cleanUp step. |
void
|
doSetup(IInvocationContext context, IConfiguration config, ITestInvocationListener listener)
Execute the target_preparer and multi_target_preparer setUp step. |
void
|
doTeardown(IInvocationContext context, IConfiguration config, Throwable exception)
Execute the target_preparer and multi_target_preparer teardown step. |
boolean
|
fetchBuild(IInvocationContext context, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener)
Execute the build_provider step of the invocation. |
boolean
|
resetBuildAndReschedule(Throwable exception, ITestInvocationListener listener, IConfiguration config, IInvocationContext context)
Report a failure for the invocation. |
void
|
runTests(IInvocationContext context, IConfiguration config, ITestInvocationListener listener)
Runs the test. |
boolean
|
shardConfig(IConfiguration config, IInvocationContext context, IRescheduler rescheduler)
Attempt to shard the configuration into sub-configurations, to be re-scheduled to run on multiple resources in parallel. |
Protected methods | |
---|---|
IShardHelper
|
createShardHelper()
Create an return the |
Public constructors
InvocationExecution
public InvocationExecution ()
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 (IInvocationContext context, IConfiguration config, ITestInvocationListener listener)
Execute the target_preparer and multi_target_preparer setUp step. Does all the devices setup required for the test to run.
Parameters | |
---|---|
context |
IInvocationContext : the IInvocationContext of the invocation. |
config |
IConfiguration : the IConfiguration of this test run. |
listener |
ITestInvocationListener : the ITestInvocation to report setup failures. |
Throws | |
---|---|
TargetSetupError |
|
BuildError |
|
DeviceNotAvailableException |
doTeardown
public void doTeardown (IInvocationContext context, IConfiguration config, Throwable exception)
Execute the target_preparer and multi_target_preparer teardown step. Does the devices tear down associated with the setup.
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. |
Throws | |
---|---|
Throwable |
fetchBuild
public boolean fetchBuild (IInvocationContext context, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener)
Execute the build_provider step of the invocation.
Parameters | |
---|---|
context |
IInvocationContext : the IInvocationContext 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 | |
---|---|
DeviceNotAvailableException |
|
BuildRetrievalError |
resetBuildAndReschedule
public boolean resetBuildAndReschedule (Throwable exception, ITestInvocationListener listener, IConfiguration config, IInvocationContext context)
Report a failure for the invocation.
Parameters | |
---|---|
exception |
Throwable : The exception that should be reported. |
listener |
ITestInvocationListener : The invocation listener. |
config |
IConfiguration : The configuration currently running. |
context |
IInvocationContext : The IInvocationContext of the invocation. |
Returns | |
---|---|
boolean |
True if the configuration should be rescheduled, False otherwise. |
runTests
public void runTests (IInvocationContext context, IConfiguration config, ITestInvocationListener listener)
Runs the test.
Parameters | |
---|---|
context |
IInvocationContext : the IInvocationContext to run tests on |
config |
IConfiguration : the IConfiguration to run |
listener |
ITestInvocationListener : the ITestInvocationListener of test results |
Throws | |
---|---|
DeviceNotAvailableException |
shardConfig
public boolean shardConfig (IConfiguration config, IInvocationContext context, IRescheduler rescheduler)
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(IConfiguration, IInvocationContext, IRescheduler)
.
Parameters | |
---|---|
config |
IConfiguration : the current IConfiguration . |
context |
IInvocationContext : the IInvocationContext holding the info of the tests. |
rescheduler |
IRescheduler : the IRescheduler |
Returns | |
---|---|
boolean |
true if test was sharded. Otherwise return false
|
Protected methods
createShardHelper
protected IShardHelper createShardHelper ()
Create an return the IShardHelper
to be used.
Returns | |
---|---|
IShardHelper |