Para integrar testes a um serviço de teste contínuo de plataforma, eles precisam atender às diretrizes desta página e seguir este fluxo recomendado.
- Use o sistema de build do Soong para Configuração de teste simples.
- Use o mapeamento de teste para criar regras de teste antes e depois do envio diretamente na árvore de origem do Android.
- Execute testes localmente usando o Atest.
Tipos de teste
Os tipos de teste compatíveis são:
- Os testes de instrumentação são compatíveis com testes funcionais e de métricas. Consulte Testar seu app para orientações gerais de teste de apps.
- O 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 de JAR usando o 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 de resultados personalizados e pós-processamento por teste é eliminada, e os conjuntos 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 conferir o framework de teste contínuo incluído no Android.
Diretrizes de casos de teste
Os casos de teste executados pelo serviço de testes contínuos devem ser 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 para entender esse princípio. Em resumo, os testes herméticos exigem não:
- Login na Conta do Google
- Conectividade configurada (telefonia/Wi-Fi/Bluetooth/NFC)
- Parâmetros de teste transmitidos
- Configuração ou remoção realizada pelo harness de teste para um caso de teste específico