O Conjunto de teste de compatibilidade (CTS) é um conjunto de testes e ferramentas comerciais sem custo financeiro usados para garantir que seus dispositivos sejam compatíveis com o Android. O CTS foi criado para ser integrado ao seu fluxo de trabalho diário, por exemplo, por um sistema de build contínuo. O CTS é executado em um computador desktop e executa testes diretamente em dispositivos conectados ou em um emulador. Para uma visão geral da compatibilidade do Android, consulte Visão geral do Programa de compatibilidade do Android.
Figura 1. Testes automatizados do CTS.
A Figura 1 mostra o processo de execução de testes automatizados do CTS:
- Faça o download e instale o CTS. Essa etapa também envolve a configuração do ambiente de teste, da estação de trabalho de teste e do dispositivo que você está testando ou dispositivo em teste (DUT)
- Execute testes automatizados do CTS.
- Armazene e analise os resultados.
- Resolva problemas e execute testes novamente.
Use o CTS para revelar incompatibilidades com antecedência e garantir que suas implementações do Android permaneçam compatíveis durante todo o processo de desenvolvimento.
Componentes do CTS
O CTS contém os seguintes componentes principais:
- Trade Federation
- Um framework e um harness de teste permitem a execução automatizada de testes.
- Testes automatizados do CTS
- Testes que usam o framework Trade Federation e podem ser executados usando o harness de teste Trade Federation.
- Testes do CTS Verifier (CTS-V)
- Testes que precisam ser executados manualmente.
- App CTS Verifier (CTS-V)
- Um app usado para realizar testes CTS-V e coletar resultados de testes CTS-V.
- Caso de teste
Um teste individual executado no DUT. Os casos de teste automatizados são escritos em Java como testes JUnit e arquivos APK do Android empacotados para serem executados no destino do dispositivo.
Os casos de teste podem ser testes de unidade ou testes funcionais. Um teste de unidade testa unidades atômicas de código na plataforma Android. Por exemplo, um teste de unidade pode testar uma única classe do Android.
Um teste funcional exercita uma combinação de métodos e classes usados para um caso de uso específico.
- Configuração de teste
Um conjunto específico de testes automatizados executados no DUT. As configurações de teste são arquivos XML localizados em
WORKING_DIRECTORY/cts/tools/cts-tradefed/res/config. Há configurações de teste que contêm todos os casos de teste automatizados e configurações de teste que contêm um subconjunto de casos de teste.- Módulo de teste
Uma configuração de teste que consiste em uma coleção de casos de teste para a mesma área de recursos.
- Plano de teste
Uma configuração de teste que consiste em uma coleção de módulos de teste.
Cobertura do teste
Os casos de teste abrangem as seguintes áreas para garantir a compatibilidade:
| Área | Descrição |
|---|---|
| Testes de assinatura | Para cada versão do Android, há arquivos XML que descrevem as assinaturas de todas as APIs públicas contidas na versão. O CTS contém um utilitário para verificar essas assinaturas de API em relação às APIs disponíveis no dispositivo. Os resultados da verificação de assinatura são registrados no arquivo XML de resultado do teste. |
| Testes de API da plataforma | Teste as APIs da plataforma (bibliotecas principais e framework de aplicativos Android), conforme documentado no Índice de classes do SDK para garantir a correção da API, incluindo assinaturas de classe, atributo e método corretas, comportamento de método correto e testes negativos para garantir o comportamento esperado para o tratamento incorreto de parâmetros. |
| Testes Dalvik | Os testes se concentram em testar o formato executável Dalvik. |
| Modelo de dados da plataforma | O CTS testa o modelo de dados da plataforma principal exposto aos desenvolvedores de aplicativos
por provedores de conteúdo, conforme documentado no
pacote
android.provider do SDK (incluindo contatos, navegadores e configurações). |
| Intents da plataforma | O CTS testa as intents da plataforma principal, conforme documentado no SDK Intents comuns. |
| Permissões da plataforma | O CTS testa as permissões da plataforma principal, conforme documentado no
SDK
Manifest.permission. |
| Recursos da plataforma | O CTS testa o tratamento correto dos tipos de recursos da plataforma principal, conforme documentado na Visão geral dos tipos de recursos do SDK. Os testes do CTS incluem testes para valores simples, drawables, nine-patch, animações, layouts, estilos e temas e carregamento de recursos alternativos. |
A seguir
Depois de ler este documento, continue com Configurar o CTS.