Ähnlich wie ein Target-Vorbereiter ermöglicht ein Multi-Target-Vorbereiter die gemeinsame Einrichtung mehrerer Geräte. Dies würde beispielsweise verwendet werden, wenn zwei Geräte zu Testzwecken mit Bluetooth verbunden werden.
Basisschnittstelle
Die Basisschnittstelle ist IMultiTargetPreparer
, die die Implementierung einer auszuführenden setUp
Methode ermöglicht. Wir empfehlen die Implementierung unserer grundlegenden abstrakten Klasse BaseMultiTargetPreparer
, die eine integrierte Deaktivierungsfunktion zum einfachen Deaktivieren eines Vorbereiters bietet.
Multi-Target-Vorbereiter stellen außerdem direkt eine tearDown
Methode für jeden Bereinigungsvorgang bereit.
Empfehlung
Wir empfehlen, jeden Vorbereiter auf eine einzelne Hauptfunktion zu beschränken. Dies ermöglicht eine einfachere Wiederverwendung von Präparatoren.
Überprüfen Sie außerdem die Liste der verfügbaren Vorbereiter, bevor Sie einen neuen hinzufügen, um Doppelarbeit zu vermeiden. Vorbereiter sind unter tools/tradefederation/core/src/com/android/tradefed/targetprep/multi/
verfügbar.
Die Anzahl der Geräte, die ein Multi-Target-Vorbereiter einrichten kann, ist unbegrenzt. Alle Geräte sind im IInvocationContext
der zu implementierenden Schnittstelle verfügbar.
XML-Konfiguration
Das Objekt-Tag ist multi_target_preparer
, zum Beispiel:
<multi_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_target_preparer>
Operationsauftrag
-
multi_target_preparer
führtsetUp
nachtarget_preparer
aus. -
multi_target_preparer
führttearDown
vor Zielreinigern aus.
Dies ermöglicht nicht immer die Leistung aller Einrichtungsschritte, daher ist es im XML möglich, den Multi-Target-Vorbereiter als multi_pre_target_preparer
zu definieren und ihn vor target_preparer
Instanzen auszuführen.
<multi_pre_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_pre_target_preparer>
Die Gesamtoperationsreihenfolge lautet wie folgt:
-
multi_pre_target_preparer setUp
-
target_preparer setUp
-
multi_target_preparer setUp
-
multi_target_preparer tearDown
-
target_preparer tearDown
-
multi_pre_target_preparer tearDown
Jeder Multi-Target-Vorbereiter kann als multi_target_preparer
oder multi_pre_target_preparer
deklariert werden, je nachdem, welche Reihenfolge der Einrichtung erforderlich ist.