Benutzerparameter

In der Android Comms Test Suite (ACTS) können zusätzliche Testinformationen oder Parameter in der ACTS-Konfiguration angegeben werden. Benutzerparameter können in jedem JSON-kompatiblen Format vorliegen und werden in Python in den entsprechenden Typ dekodiert (z. B. dict , list und str ). Es gibt zwei Stellen, an denen Benutzerparameter angegeben werden können:

  • Auf der Stammebene der Konfiguration

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

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

Wenn ein Benutzerparameter auf der Stammebene und im Testbed gefunden wird, wird der testbedspezifische Wert verwendet.

In einer ACTS-Testklasse können Benutzer diese Informationen wie folgt 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 Benutzerparameter

Nachfolgend finden Sie eine Liste nützlicher optionaler Benutzerparameter, die in ACTS besondere Eigenschaften haben:

  • consecutive_failure_limit : Anzahl aufeinanderfolgender Testfehler, die zugelassen werden, bevor verbleibende Tests in derselben Testklasse blockiert werden. Wenn nicht angegeben, besteht das Standardverhalten darin, alle Tests unabhängig von Fehlern auszuführen. Dieser Parameter ist in Fällen nützlich, in denen das Testbed falsch konfiguriert ist und alle Tests fehlschlagen.

  • quiet_tests : Liste der Testklassen oder Testfälle, die im Format test_class oder test_class . test_name , zum Beispiel BleScanApiTest oder BleScanApiTest.test_start_ble_scan_with_default_settings . Für jeden Testfall in dieser Liste werden keine Testfehlerartefakte generiert (z. B. Fehlerberichte, qxdm-Protokolle). Wenn ein Testklassenname ohne Testfall angegeben wird, werden alle Testfälle in der angegebenen Klasse so eingestellt, dass Fehlerberichte übersprungen werden. Dieses Flag kann verwendet werden, um die Ausgabe problematischer Testfälle zu unterdrücken, die voraussichtlich fehlschlagen.

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