1. Set up suite
Tests running through a suite differs from a standard test running directly through Tradefed test runner.
See Set up Suite for definitions and instructions.
2. Pass options and filters to suite and modules
Various command lines and arguments can be used to pass options and filters to the suite-level or the module-levels.
See Pass options and filters to the suite and the modules for instructions.
3. System Status Checker
System Status Checker is a component running between each module that can check and clean up some states that the module might have forgotten to clean, for example a module leaving a keyguard on.
See System status checker for implementation and use.
4. AndroidTest.xml structure
Each AndroidTest.xml
file represents one test module. This section describes
the structure of an AndroidTest.xml
configuration file, how they differ from
regular Tradefed configuration, and what is allowed and not allowed.
See AndroidTest.xml structure for allowed tags and an example configuration.
5. Tune sharding configuration
This section explains how to tune sharding aspects of your module configuration and describes the benefits associated with each of them:
- Declare your module shardable or not
- Tune the possible number of shards for your module
See Tune AndroidTest.xml modules for details.
6. Controller
Module controllers are special objects that can be specified in
AndroidTest.xml
to alter some aspect of the module's behavior. For example,
you may completely skip the module if some conditions are not met.
See Module controllers for implementation and logging.
7. Retry
Suite Retry allows you to re-run a previous invocation of failed tests in order to rule out flakiness or poor isolation that may have caused the first failure.
See Suite Retry for examples and use.
8. Multi devices suites
Newer releases now support multi-devices suites and modules which allow for a test to coordinate between multiple devices in its test flow.
See Multi-devices suites for more details.