Nutzerparameter

In der Android Comms Test Suite (ACTS) können zusätzliche Testinformationen oder Parameter in der ACTS-Konfiguration angegeben werden. Nutzerparameter können ein beliebiges JSON-konformes Format haben und in Python in den entsprechenden Typ decodiert werden, z. B. dict, list und str. Nutzerparameter können an zwei Stellen angegeben werden:

  • Auf der Stammebene der Konfiguration

    {
        "testbed": {
            ...
        },
        "my_user_param1": "my_value",
        "my_user_param2": {"another": ["value"]}
    }
    
  • Innerhalb eines testbed

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

Wenn ein Nutzerparameter auf der Stammebene und innerhalb des testbed-Moduls gefunden wird, wird der testbed-spezifische Wert verwendet.

In einer ACTS-Testklasse können Nutzer diese Informationen folgendermaßen lesen:

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

Spezielle Nutzerparameter

Im Folgenden finden Sie eine Liste nützlicher optionaler Nutzerparameter, die in ACTS spezielle Eigenschaften haben:

  • consecutive_failure_limit: Anzahl der aufeinanderfolgenden Testfehler, die zulässig sind, bevor verbleibende Tests in derselben Testklasse blockiert werden. Wenn keine Angabe erfolgt, werden standardmäßig alle Tests unabhängig von Fehlern ausgeführt. Dieser Parameter ist nützlich, wenn die Testumgebung nicht richtig konfiguriert ist und alle Tests fehlschlagen.

  • quiet_tests: Liste der Testklassen oder Testfälle im Format test_class oder test_class.test_name, z. B. BleScanApiTest oder BleScanApiTest.test_start_ble_scan_with_default_settings. Für jeden Testlauf in dieser Liste werden keine Artefakte für Testfehler generiert (z. B. Fehlerbericht, qxdm-Logs). Wenn ein Testklassenname ohne Testfall angegeben wird, werden alle Testfälle in der gegebenen Klasse so eingestellt, dass Fehlerberichte übersprungen werden. Mit diesem Flag kann die Ausgabe für problematische Testfälle unterdrückt werden, die voraussichtlich fehlschlagen.

  • retry_tests: Liste der Testklassen oder Testfälle im Format test_class oder test_class.test_name, z. B. BleScanApiTest oder BleScanApiTest.test_start_ble_scan_with_default_settings. Wenn ein Test für jeden Testfall in dieser Liste fehlschlägt, wird er einmal wiederholt. Wenn der Test ein zweites Mal fehlschlägt, wird er als fehlgeschlagen markiert.