Przygotowywanie wielu celów

Podobnie jak obiekt przygotowania docelowego, obiekt przygotowania docelowego dla wielu urządzeń umożliwia konfigurowanie wielu urządzeń jednocześnie. Można go na przykład użyć do połączenia dwóch urządzeń przez Bluetooth na potrzeby testów.

Interfejs podstawowy

Interfejs podstawowy to IMultiTargetPreparer, który umożliwia wykonanie metody setUp. Zalecamy zaimplementowanie podstawowej abstrakcyjnej klasy BaseMultiTargetPreparer, która zawiera wbudowaną funkcję wyłączania, dzięki której można łatwo wyłączyć przygotowywanie.

Przygotowacze wielocelowe udostępniają też bezpośrednio metodę tearDown do wszystkich operacji czyszczenia.

Rekomendacja

Zalecamy ograniczenie każdej osoby przygotowującej do jednej głównej funkcji. Dzięki temu można łatwiej ponownie wykorzystać przygotowane dane.

Zanim dodasz nowego autora, sprawdź listę dostępnych autorów, aby uniknąć powielania pracy. Przygotowują je osoby z kraju tools/tradefederation/core/src/com/android/tradefed/targetprep/multi/.

Nie ma ograniczeń co do liczby urządzeń, które może skonfigurować usługa przygotowująca wiele celów. Wszystkie urządzenia są dostępne w IInvocationContext interfejsu do wdrożenia.

Konfiguracja XML

Tag obiektu to multi_target_preparer, na przykład:

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

Zamówienie

  1. multi_target_preparer wykonuje setUp po target_preparer.
  2. multi_target_preparer jest wykonywana tearDown przed oczyszczaniem docelowym.

Nie zawsze pozwala to na wykonanie wszystkich kroków konfiguracji, dlatego w pliku XML można zdefiniować narzędzie do przygotowywania wielu celów jako multi_pre_target_prepareri wykonywać je przed wystąpieniami target_preparer.

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

Kolejność operacji:

  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

Każdy przygotowujący wielocelowy może być zadeklarowany jako multi_target_preparer lub multi_pre_target_preparer w zależności od tego, jakie wymagania dotyczące konfiguracji są konieczne.