GoogleTest

Um GoogleTest (GTest, às vezes também chamado de "testes nativos") para a plataforma normalmente acessa HALs de nível inferior ou executa IPC bruto em vários serviços do sistema. Por causa disso, a abordagem de teste geralmente é fortemente acoplada ao serviço em teste.

Para integrar-se à infraestrutura de teste contínuo, crie seus GTests usando a estrutura GTest .

Exemplos

Aqui estão alguns exemplos de GTest na fonte da plataforma:

Resumo das etapas

  1. Siga o exemplo de configuração do módulo GTest .
  2. Para incluir automaticamente as dependências do GTest, use a regra de compilação BUILD_NATIVE_TEST na configuração do módulo de teste.
  3. Escreva uma configuração de teste, seguindo os exemplos para opções simples e complexas .
  4. Compile o módulo de teste com mmm para compilações incrementais ou mma para compilações completas:

    make hwui_unit_tests -j
    
  5. Execute o teste localmente usando Atest :

    atest hwui_unit_tests
    

Você também pode adicionar argumentos aos seus GTests. Os seguintes são argumentos especialmente úteis: * native-test-flag especifica valores de sinalizadores adicionais a serem passados ​​para o comando de shell GTest. * native-test-timeout especifica um valor de tempo limite de teste em microssegundos.

O código de exemplo a seguir usa esses dois argumentos:

   <pre class="devsite-terminal devsite-click-to-copy">
   atest <var>test-name</var> -- --module-arg <var>test-name</var>:native-test-flag:"\"<var>argument1</var> <var>argument2</var>\"" \
   --module-arg <var>test-name</var>:native-test-timeout:60000
   </pre>
  1. Execute o teste com o equipamento de teste da Federação de Comércio:

    make tradefed-all -j
    tradefed.sh run template/local_min --template:map test=hwui_unit_tests
    
  2. Instale e execute manualmente:

    1. Envie o binário de teste gerado para o seu dispositivo:

      adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \
        /data/nativetest/hwui_unit_tests/hwui_unit_tests
      
    2. Inicie o GTest e execute o teste invocando o binário de teste no dispositivo:

      adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
      

    Para obter mais informações sobre como personalizar a execução do teste, adicione o parâmetro --help ao seu binário de teste. Para obter mais informações sobre parâmetros, consulte o guia avançado do GTest .