Mehrere Ziele

Ähnlich wie ein Zielvorbereitungstool ermöglicht ein Tool zur Vorbereitung mehrerer Ziele die Einrichtung mehrerer Geräte gleichzeitig. Dies kann beispielsweise verwendet werden, wenn zwei Geräte zum Testen über Bluetooth verbunden werden.

Basisoberfläche

Die Basis-Schnittstelle ist IMultiTargetPreparer, über die eine setUp-Methode implementiert und ausgeführt werden kann. Wir empfehlen die Implementierung unserer einfachen abstrakten Klasse BaseMultiTargetPreparer, die eine integrierte Deaktivierungsfunktion bietet, mit der sich ein Bearbeiter ganz einfach deaktivieren lässt.

Bei Dienstleistern mit mehreren Zielen wird auch direkt eine tearDown-Methode für alle Bereinigungsvorgänge bereitgestellt.

Empfehlung

Wir empfehlen, jede Person auf eine einzige Hauptfunktion zu beschränken. So können die Ersteller einfacher wiederverwendet werden.

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

Die Anzahl der Geräte, die ein Multi-Target-Vorbereiter einrichten kann, ist nicht begrenzt. Alle Geräte sind in IInvocationContext der Benutzeroberfläche verfügbar.

XML-Konfiguration

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

<multi_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_target_preparer>

Befehl zur Ausführung

  1. multi_target_preparer führt setUp nach target_preparer aus.
  2. multi_target_preparer wird tearDown vor Zielbereinigungen ausgeführt.

Dies ermöglicht nicht immer die Ausführung aller Einrichtungsschritte. Daher ist es möglich, in der XML-Datei den Multi-Target-Vorbereiter als multi_pre_target_preparer zu definieren und vor target_preparer-Instanzen auszuführen.

<multi_pre_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_pre_target_preparer>

Die allgemeine Reihenfolge der Vorgänge ist:

  1. multi_pre_target_preparer setUp
  2. target_preparer setUp
  3. multi_target_preparer setUp
  4. multi_target_preparer tearDown
  5. target_preparer tearDown
  6. multi_pre_target_preparer tearDown

Je nach Einrichtungsreihenfolge kann jeder Multi-Target-Vorbereiter als multi_target_preparer oder multi_pre_target_preparer deklariert werden.