Para integrar testes a um serviço de testes contínuos da plataforma, eles precisam atender às diretrizes desta página e seguir o fluxo recomendado.
- Use o sistema de build Soong para a configuração de testes simples.
- Use o mapeamento de testes para criar regras de teste pré e pós-envio diretamente na árvore de origem do Android.
- Execute testes localmente usando o Atest.
Tipos de teste
Os tipos de teste com suporte são:
- Os testes de instrumentação oferecem suporte a testes funcionais e de métricas. Consulte Testar seu app para orientações gerais sobre testes de apps.
- GoogleTest (GTest) oferece suporte aos
seguintes tipos de teste:
- GTests funcionais usando o framework GTest
- Testes de métricas usando
google-benchmark
- Testes de host JAR usando JUnit
Os testes funcionais fazem declarações de aprovação ou reprovação em casos de teste, enquanto os testes de métricas geralmente executam uma ação repetidamente para coletar métricas de tempo.
Com o formato de entrada/saída padronizado, a necessidade de análise e pós-processamento de resultados personalizados por teste é eliminada, e os arcabouços de testes genéricos podem ser usados para todos os testes que se encaixam na convenção. Consulte a visão geral do Trade Federation para o framework de testes contínuos incluído no Android.
Diretrizes de casos de teste
Espera-se que os casos de teste executados pelo serviço de testes contínuos sejam herméticos, ou seja, todas as dependências são declaradas e fornecidas com os testes. Consulte Servidores herméticos no blog de testes do Google Blog para entender esse princípio. Em resumo, os testes herméticos não exigem:
- Login na Conta do Google
- Conectividade configurada (telefonia/Wi-Fi/Bluetooth/NFC)
- Parâmetros de teste transmitidos
- Configuração ou desmontagem realizada pelo arcabouço de testes para um caso de teste específico