用户参数

Android 通讯测试套件 (ACTS) 中,您可以在 ACTS 配置内指定附加的测试信息或参数。用户参数可以采用任何与 JSON 兼容的格式,并解码为 Python 中的相应类型(例如 dictliststr)。您可以在两个位置指定用户参数:

  • 在配置的根级别

    {
        "testbed": {
            ...
        },
        "my_user_param1": "my_value",
        "my_user_param2": {"another": ["value"]}
    }
    
  • 在测试平台内

    {
        "testbed": {
            "my_testbed": {
                "AndroidDevice": [...],
                ...,
                "my_user_param1": "my_value",
                "my_user_param2": {"another": ["value"]}
            }
        },
    }
    

如果在根级别和测试平台内发现用户参数,系统会使用测试平台专属值。

在 ACTS 测试类中,用户可以使用以下代码阅读此信息:

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={})

特殊用户参数

下面列出了 ACTS 中实用的具有特殊属性的可选用户参数:

  • consecutive_failure_limit:允许连续失败的测试次数,达到此限值后将阻止同一测试类中的其余测试。如果未指定,默认行为是无论失败多少次都会运行所有测试。在测试平台配置不当以致所有测试失败的情况下,此参数很实用。

  • quiet_tests:以 test_classtest_class.test_name 格式指定的测试类或测试用例的列表,例如 BleScanApiTestBleScanApiTest.test_start_ble_scan_with_default_settings。此列表中的每个测试用例都不会生成任何测试失败工件(例如 bug 报告、qxdm 日志)。如果指定了测试类名称但没有指定测试用例,系统会将指定类中的所有测试用例都设置为跳过 bug 报告。此标志可用于禁止有问题的测试用例的输出,这些测试用例预计会失败。

  • retry_tests:以 test_classtest_class.test_name 格式指定的测试类或测试用例的列表,例如 BleScanApiTestBleScanApiTest.test_start_ble_scan_with_default_settings。对于此列表中的每个测试用例,如果某项测试失败,系统会重试一次。如果该测试第二次失败,系统就会将其标记为失败。