Przygotowania do testów są wywoływane przed testami na poziomie testu, w którym są zdefiniowane. Umożliwia to skonfigurowanie dowolnego urządzenia do płynnego przeprowadzania testów.
Interfejs podstawowy
Interfejs podstawowy to ITargetPreparer
, który umożliwia wykonanie metody setUp
. Zalecamy wdrożenie naszej podstawowej klasy abstrakcyjnejBaseTargetPreparer
, która zawiera wbudowaną funkcję wyłączania, dzięki czemu możesz łatwo wyłączyć moduł przygotowujący.
Prostszy interfejs
Naturalnym rozszerzeniem setUp
jest tearDown
, które jest udostępniane przez inny interfejs: ITargetCleaner
. Zapewnia to interfejs tearDown
, który umożliwia wyczyszczenie wszystkiego, co zostało zrobione w setUp
po wykonaniu testu.
Klasa BaseTargetPreparer
rozszerza też klasę ITargetCleaner
.
Rekomendacje
Zalecamy, aby każdy przygotowujący był ograniczony do jednej głównej funkcji, np. instalowania pliku APK lub uruchamiania polecenia. Ułatwia to ponowne używanie preparatów.
Przed dodaniem nowego preparera sprawdź też listę dostępnych preparerów, aby uniknąć powielania pracy. Usługa jest dostępna 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>
Więcej informacji znajdziesz w artykule Konfigurowanie pakietów.
Konfiguracja najwyższego poziomu
Jeśli preparator jest określony w konfiguracji najwyższego poziomu, jest uruchamiany tylko raz na każde urządzenie. Przykładem jest
cts-common.xml
,
czyli konfiguracja najwyższego poziomu dla testów pakietu CTS (Android Compatibility Test Suite).
Konfiguracja na poziomie modułu
Jeśli preparer jest określony na poziomie modułu, zawsze jest uruchamiany przed tym modułem. Przykładem jest
backup/AndroidTest.xml
,
który określa, jak Tradefed uruchamia moduł backup
CTS.
Pamiętaj, że preparer jest uruchamiany przed modułem, ale po wszystkich kontrolerach stanu systemu.