Systemstatus-Checker werden in der Konfiguration auf Suite-Ebene zwischen den einzelnen Modulen. Sie prüfen, ob sich das Modul geändert hat. und einige bestimmte Status nicht wiederhergestellt, z. B. beim Ändern einer Systemeigenschaft Wert.
Mit smarten Shopping-Kampagnen soll sichergestellt werden, dass Modulautoren nicht vergessen, nach ihren Tests durchführen; Wenn ja, lass uns eine Spur davon geben, damit das Problem behoben werden kann.
Eine weitere Möglichkeit besteht darin, den ursprünglichen Zustand nach Möglichkeit wiederherzustellen, z. B. Schließen des Keyguard, falls er geöffnet war
XML-Definition für Systemstatusprüfung
<system_checker class="com.android.tradefed.suite.checker.KeyguardStatusChecker" />
<system_checker class="com.android.tradefed.suite.checker.LeakedThreadStatusChecker" />
<system_checker class="com.android.tradefed.suite.checker.SystemServerStatusChecker" />
SSKs werden in der Tradefed-Konfiguration unter dem Tag system_checker
definiert
XML.
Implementierung
Jede smarte Shopping-Kampagne muss die ISystemStatusChecker
mit den beiden Hauptmethoden preExecutionCheck
und postExecutionCheck
die vor und nach jeder
Modulausführung ausgeführt werden.
Eine Prüffunktion kann nur eine der beiden Methoden implementieren Wenn Sie den Status vor dem Modul prüfen und mit den den Status nach dem Modul.
Mehrere Beispiele
Implementierungen
die in Tradefed vorhanden sind. Es wird empfohlen, sich bei jeder Implementierung auf eine einzelne Prüfung zu konzentrieren.
um die Wiederverwendbarkeit zu verbessern. Beispiel:
SystemServerStatusCheck
prüft, ob der system_server
-Prozess während des folgenden Zeitraums auf dem Gerät neu gestartet wurde:
die Ausführung der Testsuite. Im postExecutionCheck
wird deviceSoftRestarted
aufgerufen,
die in den
NativeDevice
um zu prüfen, ob der system_server
-Prozess neu gestartet wurde.
Jeder Vorgang gibt
StatusCheckerResult
,
So kann das Team entscheiden, ob zusätzliche Informationen
wie ein Fehlerbericht,
erfasst werden sollten.
Wo sind sie in CTS definiert?
Die Definition der CTS-Systemstatusprüfungen /test/suite_harness/tools/cts-tradefed/res/config/cts-system-checkers.xml
So finden Sie Prüffehler
Standardmäßig werden Fehler der Systemprüfung nur in den Protokollen und als Fehlerberichte angezeigt
erfasst für den Aufruf, dessen Name dem Format entspricht
bugreport-checker-post-module-<module name>.zip
So können Sie feststellen, nach welchem Modul der Fehlerbericht erstellt wurde.
Sie können den Bericht zur Systemprüfung selbst als Testfehler erstellen, indem Sie
Die Option --report-system-checkers
wird auf true
festgelegt. Dies führt zu einer
Testlauf wird als fehlgeschlagen angezeigt, wobei der Grund für den Fehler die Statusprüfung ist
bestimmte Prüfung.