In the Android Comms Test Suite (ACTS),
additional test information or parameters can be specified from within
the ACTS config. User params can be in any JSON-compliant format, and are
decoded into the appropriate type in Python (for example, dict
, list
, and
str
). There are two places where user parameters can be specified:
At the root level of the config
{ "testbed": { ... }, "my_user_param1": "my_value", "my_user_param2": {"another": ["value"]} }
Within a testbed
{ "testbed": { "my_testbed": { "AndroidDevice": [...], ..., "my_user_param1": "my_value", "my_user_param2": {"another": ["value"]} } }, }
If a user parameter is found within the root level and within the testbed, the testbed-specific value is used.
In an ACTS test class, users can read this information using the following:
class MyActsTest
def setup_class(self):
self.my_param_1 = self.user_params['my_user_param1']
# Get the parameter with a default value if not found within config.
self.my_param_2 = self.user_params.get('my_user_param2', default={})
Special user parameters
Here is a list of useful optional user parameters that have special properties in ACTS:
consecutive_failure_limit
: Number of consecutive test failures to allow before blocking remaining tests in the same test class. If not specified, the default behavior is to run all tests, regardless of failures. This parameter is useful in cases where the testbed is improperly configured, causing all tests to fail.quiet_tests
: List of test classes or test cases specified with the formattest_class
ortest_class.test_name
, for example,BleScanApiTest
orBleScanApiTest.test_start_ble_scan_with_default_settings
. Each test case in this list won't have any test failure artifacts generated (for example, bug reports, qxdm logs). If a test class name is specified without a test case, all test cases in the given class are set to skip bug reports. This flag can be used to suppress output for problematic test cases that are expected to fail.retry_tests
: List of test classes or test cases specified with the formattest_class
ortest_class.test_name
, for example,BleScanApiTest
orBleScanApiTest.test_start_ble_scan_with_default_settings
. For each test case in this list, if a test fails, it's retried once. If the test fails a second time, it's marked as a failure.