O conjunto de teste de compatibilidade (CTS) é um conjunto de teste de nível comercial sem custo financeiro e ferramentas usadas para garantir que seus dispositivos sejam compatíveis com o Android. O CTS é integrado ao seu fluxo de trabalho diário, por exemplo, por meio de um sistema de build contínuo. O CTS é executado em uma máquina de computador 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 do dispositivo em teste (DUT, na sigla em inglês).
- Execute testes automatizados do CTS.
- Armazene e analise os resultados.
- Resolver problemas e repetir testes.
Use o CTS para revelar incompatibilidades antecipadamente 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:
- Federação de comércio
- Um harness e um framework de teste permitem a execução automatizada de testes.
- Testes automatizados do CTS
- Testes que usam o framework da Trade Federation e podem ser executados usando o harness de teste da 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 os resultados.
- Caso de teste
Um teste individual executado no DUT. Os casos de teste automatizados são gravados em Java como testes JUnit e arquivos APK do Android empacotados para serem executados no dispositivo de destino.
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 do 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 recurso.
- Plano de teste
Uma configuração de teste que consiste em uma coleção de módulos de teste.
Cobertura de 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 resultados do teste. |
Testes da API Platform | Teste as APIs da plataforma (bibliotecas principais e framework do aplicativo 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 processamento incorreto de parâmetros. |
Testes do Dalvik | Os testes se concentram no formato executável Dalvik. |
Modelo de dados da plataforma | O CTS testa o modelo de dados da plataforma principal conforme exposto aos desenvolvedores de aplicativos
por provedores de conteúdo, conforme documentado no
pacote
android.provider do SDK (incluindo contatos, navegadores e configurações). |
Intenções da plataforma | O CTS testa as intents principais da plataforma, conforme documentado no Intents comuns do SDK. |
Permissões da plataforma | O CTS testa as permissões principais da plataforma, conforme documentado no
Manifest.permission do SDK. |
Recursos da plataforma | O CTS testa o processamento correto dos tipos de recursos principais da plataforma, 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, além de carregar recursos alternativos. |
A seguir
Depois de ler este documento, continue em Configurar o CTS.