Zielvorbereitung

Target-Präparatoren werden vor den Tests auf der Testebene aufgerufen, auf der sie definiert sind. So kann jedes Gerät für Tests eingerichtet werden, damit diese reibungslos ablaufen.

Basisschnittstelle

Die Basisschnittstelle ist ITargetPreparer, die die Implementierung einer setUp-Methode ermöglicht, die ausgeführt werden soll. Wir empfehlen, unsere abstrakte Basisklasse BaseTargetPreparer zu implementieren, die eine integrierte Deaktivierungsfunktion bietet, mit der sich ein Preparer ganz einfach deaktivieren lässt.

Klarere Benutzeroberfläche

Die natürliche Erweiterung von setUp ist tearDown und wird über eine andere Schnittstelle, ITargetCleaner, bereitgestellt. Dadurch wird die tearDown-Schnittstelle bereitgestellt, mit der nach der Ausführung des Tests alle in setUp vorgenommenen Änderungen bereinigt werden können.

Die Klasse BaseTargetPreparer erweitert auch ITargetCleaner.

Empfehlungen

Wir empfehlen, dass jeder Vorbereiter auf eine einzige Hauptfunktion beschränkt ist, z. B. die Installation einer APK oder die Ausführung eines Befehls. So können sie leichter wiederverwendet werden.

Sehen Sie sich auch die Liste der verfügbaren Ersteller an, bevor Sie einen neuen hinzufügen, um Doppelarbeit zu vermeiden. Die Funktion ist in tools/tradefederation/core/src/com/android/tradefed/targetprep/ verfügbar.

XML-Konfiguration

Das Objekt-Tag ist target_preparer, z. B.:

<target_preparer class="com.android.tradefed.targetprep.InstallApkSetup">
    <option name="install-arg" value="-d"/>
</target_preparer>

Weitere Informationen finden Sie unter Suites einrichten.

Einrichtung auf höchster Ebene

Wenn der Preparer in einer Einrichtung auf oberster Ebene angegeben ist, wird er nur einmal für jedes Gerät ausgeführt. Ein Beispiel ist cts-common.xml, eine Einrichtung der obersten Ebene für Android Compatibility Test Suite (CTS)-Tests.

Einrichtung auf Modulebene

Wenn der Preparer auf Modulebene angegeben wird, wird er immer vor dem Modul ausgeführt. Ein Beispiel ist backup/AndroidTest.xml, das definiert, wie Tradefed das CTS-Modul backup ausführt.

Der Preparer wird zwar vor dem Modul ausgeführt, aber nach allen Systemstatusprüfungen.