Ta strona opisuje jak napisać test powłoki. Jeśli test można wykonać za pomocą skryptu powłoki, można go uruchomić za pomocą ExecutableHostTest
. ExecutableHostTest
obsługuje filtrowanie testów i fragmentowanie testów.
Pisanie testu powłoki
Twój główny skrypt powłoki działa na hoście. Inne skrypty lub pliki binarne do uruchomienia na urządzeniu oraz wymagane pliki danych należy najpierw przekazać na urządzenie. Można to zrobić w ramach głównego skryptu lub za pomocą PushFilePreparer
.
Jeśli test zawiera moduły binarne urządzenia, które powinny być zainstalowane wraz z testem, określ je za pomocą właściwości data_device_bins
.
sh_test {
name: "module-name",
...
data_device_bins: ["target-name"],
}
Takim przykładem jest test powłoki ziptool-tests
.
Wynik testu dla każdego testu jest oparty na statusie wyjścia Twojego głównego skryptu. Test może przekroczyć limit czasu, jeśli określono limit czasu per-binary-timeout
.
Konfiguracja testu powłoki
W konfiguracji Tradefed XML testy powłoki są uruchamiane przez program uruchamiający ExecutableHostTest
.
<test class="com.android.tradefed.testtype.binary.ExecutableHostTest" >
<option name="binary" value="your-test-script.sh" />
<option name="relative-path-execution" value="true" />
<option name="per-binary-timeout" value="15m" />
</test>
Ustaw główny skrypt testu jako wartość opcji binary
. Sprawdź inne opcje ExecutableHostTest
.
Jeśli skrypt wymaga uprawnień administratora, dodaj do konfiguracji RootTargetPreparer
.