Esta página descreve como escrever um teste de shell. Se um teste puder ser feito com um
script de shell, você poderá executá-lo com ExecutableHostTest
. O ExecutableHostTest
oferece suporte à filtragem de testes e
à fragmentação de testes.
Criar um teste de shell
O script de shell principal é executado no host. Outros scripts ou binários a serem executados
no dispositivo e os arquivos de dados necessários precisam ser enviados por push ao dispositivo primeiro.
Isso pode ser feito como parte do script principal ou usando PushFilePreparer
.
Se o teste tiver módulos binários de dispositivo que precisam ser instalados com o
teste, especifique-os com a propriedade
data_device_bins
.
sh_test {
name: "module-name",
...
data_device_bins: ["target-name"],
}
O teste de shell ziptool-tests
é um exemplo disso.
O resultado de cada teste é baseado no status de saída do script principal.
Um teste pode ter um tempo limite se per-binary-timeout
tiver sido especificado.
Configurar um teste de shell
Na configuração do XML da Tradefed, os testes de shell são executados pelo
executador 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>
Defina o script principal do teste como o valor da opção binary
. Confira
outras opções de ExecutableHostTest
.
Se o script exigir privilégios de raiz, adicione RootTargetPreparer
à configuração.