O Compatibility Test Suite (CTS) é um pacote de testes e ferramentas comerciais sem custo financeiro usadas 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 uma máquina 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. Esta 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 os problemas e execute os testes novamente.
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 ambiente e um framework 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 arnês de teste do 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 do CTS-V e coletar os resultados deles.
- Caso de teste
Um teste individual executado no DUT. Os casos de teste automatizados são gravados em Java como testes JUnit e empacotados em arquivos APK do Android 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 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 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 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 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 classe, atributo e assinaturas de método corretos, comportamento correto do método e testes negativos para garantir o comportamento esperado para tratamento incorreto de parâmetros. |
Testes do Dalvik | Os testes se concentram em testar o formato executável do 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 do SDK
android.provider (incluindo contatos, navegadores e configurações). |
Intenções da plataforma | O CTS testa as intents principais da plataforma, conforme documentado no SDK Intents comuns. |
Permissões da plataforma | O CTS testa as permissões principais da plataforma, conforme documentado no
SDK
Manifest.permission . |
Recursos da plataforma | Os testes do CTS verificam 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, nove patches, animações, layouts, estilos e temas, além de carregamento de recursos alternativos. |
A seguir
Depois de ler este documento, continue para Configurar o CTS.