Moduły przygotowujące miejsca docelowe są wywoływane przed testami w poziom testowy w których są zdefiniowane. Umożliwia to skonfigurowanie dowolnego urządzenia w celu płynnego przeprowadzania testów.
Interfejs podstawowy
Interfejs podstawowy to
ITargetPreparer
,
który umożliwia wdrożenie metody setUp
. Zalecamy wdrożenie podstawowej abstrakcyjnej klasy BaseTargetPreparer
, która zawiera funkcję wyłączania, dzięki której można łatwo wyłączyć przygotowywanie.
Czystszy interfejs
Naturalne rozszerzenie funkcji setUp
to tearDown
i jest dostarczane przez inne
interfejsu,
ITargetCleaner
. Udostępnia interfejs tearDown
.
który pozwala usunąć wszystko, co zostało wykonane w aplikacji setUp
po zakończeniu testu
Klasa BaseTargetPreparer
rozszerza też klasę ITargetCleaner
.
Rekomendacje
Zalecamy, aby każdy przygotowujący miał dostęp tylko do jednej głównej funkcji, np. do instalowania pliku APK lub wykonywania polecenia. Dzięki temu można łatwiej ponownie użyć narzędzia do przygotowywania.
Zanim dodasz nowego autora, sprawdź listę dostępnych autorów, aby uniknąć powielania pracy. Materiały przygotowujące są dostępne w: tools/tradefederation/core/src/com/android/tradefed/targetprep/
.
Konfiguracja XML
Tag obiektu to target_preparer
. Na przykład:
<target_preparer class="com.android.tradefed.targetprep.InstallApkSetup">
<option name="install-arg" value="-d"/>
</target_preparer>
Aby uzyskać więcej informacji, zapoznaj się też z artykułem Konfigurowanie pakietów.
Konfiguracja najwyższego poziomu
W przypadku określenia w konfiguracji najwyższego poziomu narzędzie przygotowujące jest uruchamiane tylko raz w przypadku każdego z nich
urządzenia. Przykładem jest cts-common.xml
, czyli konfiguracja najwyższego poziomu dla testów Compatibility Test Suite (CTS) na Androida.
Konfiguracja na poziomie modułu
Jeśli jest określony na poziomie modułu, zawsze jest wykonywany przed tym modułem. Na przykład:
backup/AndroidTest.xml
,
który określa sposób, w jaki Tradefed uruchamia moduł CTS backup
.
Zwróć uwagę, że narzędzie przygotowujące działa przed modułem, ale działa po dowolnym narzędzia do sprawdzania stanu systemu.