Visão geral do conjunto de teste de compatibilidade (CTS)

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.

Testes automatizados do CTS

Figura 1. Testes automatizados do CTS.

A Figura 1 mostra o processo de execução de testes automatizados do CTS:

  1. 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).
  2. Execute testes automatizados do CTS.
  3. Armazene e analise os resultados.
  4. 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.