Scrivere un test della shell in Trade Federation

In questa pagina viene descritto come scrivere un test shell. Se un test può essere eseguito con un dello script shell, puoi eseguirlo con ExecutableHostTest. ExecutableHostTest supporta filtri di test e eseguire il test dello sharding.

Scrivi un test shell

Lo script shell principale viene eseguito sull'host. Altri script o file binari da eseguire sul dispositivo e i file di dati richiesti devono prima essere inviati al dispositivo. Questa operazione può essere eseguita nello script principale o utilizzando PushFilePreparer.

Se il test contiene moduli binari del dispositivo che devono essere installati insieme al test, specificali con la proprietà data_device_bins.

sh_test {
    name: "module-name",
    ...
    data_device_bins: ["target-name"],
}

Il test shell ziptool-tests è un esempio di questo tipo.

Il risultato del test per ogni test si basa sullo stato di uscita dello script principale. Un test può scadere se è stato specificato per-binary-timeout.

Configurare un test shell

Nella configurazione XML di Tradefed, i test della shell vengono eseguiti tramite il programma di esecuzione 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>

Imposta lo script principale per il test come valore dell'opzione binary. Paga altre opzioni di ExecutableHostTest.

Se lo script richiede il privilegio principale, aggiungi RootTargetPreparer alla configurazione.