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
. ExecutableHostTest
é compatível com filtragem de teste e fragmentação de teste.
Escrevendo um teste de shell
Seu script de shell principal é executado no host. Outros scripts ou binários a serem executados no dispositivo e os arquivos de dados necessários devem ser enviados primeiro ao dispositivo. Isso pode ser feito como parte do script principal ou usando PushFilePreparer
.
Se o teste tiver módulos binários de dispositivo que devem ser instalados junto com o teste, especifique-os com a propriedade data_device_bins
.
sh_test {
name: "module-name",
...
data_device_bins: ["target-name"],
}
Teste de shell ziptool-tests
é um exemplo.
O resultado do teste para cada teste é baseado no status de saída do seu script principal. Um teste pode atingir o tempo limite se o tempo limite per-binary-timeout
tiver sido especificado.
Configurando um teste de shell
Na configuração Tradefed XML, os testes de shell são executados por meio do ExecutableHostTest
runner.
<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 para o teste como o valor da opção binary
. Confira outras opções de ExecutableHostTest
.
Se o script exigir privilégios de root, adicione RootTargetPreparer
à configuração.