Há várias maneiras de usar Firebase Test Lab para executar testes no seu app Android, incluindo a interface da linha de comando, o Android Studio, a interface Test Lab no console Firebase e a API Testing. Independentemente de como você iniciar os testes, os resultados serão armazenados no projeto do Firebase que você especificar. É possível analisar os resultados com a API ToolResults, além de qualquer uma das ferramentas mencionadas acima. Nesta página, descrevemos como entender e analisar esses resultados de teste.
Principais conceitos
Para conferir os resultados de todas as suas execuções de teste anteriores, selecione Test Lab no painel de navegação esquerdo do seu projeto no console Firebase. Esta página mostra todas as execuções de teste dos apps que você testou com seu projeto no Test Lab.
Antes de analisar os resultados do teste, é necessário entender três conceitos:
Quando você executa um teste ou um conjunto de casos de teste em relação aos dispositivos e configurações que você selecionou, o Test Lab executa o teste no seu app em um lote e exibe os resultados como uma matriz de teste.
Dispositivos × Execuções de teste = Matriz de teste
- Dispositivo
- Um dispositivo físico ou virtual (somente Android) em que você realiza um teste, como um smartphone, tablet ou wearable. Os dispositivos em uma matriz de teste são identificados por modelo, versão do SO, orientação da tela e localidade (também conhecida como configurações geográficas e de idioma).
- Teste, execução do teste
- Um teste (ou um conjunto de casos de teste) a ser executado em um dispositivo. É possível executar um teste por dispositivo ou, opcionalmente, fragmentar o teste e executar os casos de teste em diferentes dispositivos.
- Matriz de teste
- Contém os status e resultados de teste das execuções do teste. Se alguma execução do teste em uma matriz falhar, a matriz inteira falhará.
As seções a seguir explicam como navegar pelos resultados do teste.
Interpretar os resultados de histórico dos testes
Quando navega pelos resultados dos testes selecionando Test Lab, você vê os resultados dos testes executados até agora.
O histórico de testes é agrupado por app. Somente as cinco matrizes de teste mais recentes são exibidas para cada app. Se houver mais opções disponíveis, clique no link Todas as matrizes na parte inferior da lista de teste do aplicativo para ver a lista completa desse aplicativo.
Interpretar os resultados da matriz de teste
Ao iniciar um teste por meio da IU do Test Lab, você é redirecionado para uma página em que pode ver sua matriz de teste e clicar em uma execução do teste específica para ver os resultados. O Android Studio e o comando gcloud também oferecem um URL para a página de resultados da matriz de teste.
Em uma matriz de teste comum, você pode executar um teste em uma dezena de dispositivos diferentes ou mais. Cada execução de teste pode gerar um resultado diferente. Os possíveis resultados para cada execução de teste em uma matriz de teste incluem os especificados a seguir:
- Aprovado : nenhuma falha foi encontrada.
- Falha : pelo menos uma falha foi encontrada.
- Inconclusivo : os resultados do teste foram inconclusivos, possivelmente devido a um erro Test Lab.
- Ignorado : os valores de dimensão selecionados foram incompatíveis para algumas execuções do teste na matriz. Isso ocorre quando os dispositivos escolhidos não são compatíveis com um ou mais níveis da API Android.
Para analisar os resultados de teste agregados de todas as matrizes de teste de um determinado app no seu projeto do Firebase, clique no nome do app, conforme mostrado no exemplo a seguir:
Exemplo de página de resultados da matriz de teste com apenas quatro execuções de teste
Isso leva você à lista de matrizes de teste do seu app, onde é possível clicar no nome de qualquer matriz de teste para ver os resultados e onde é possível clicar no nome do app (mostrado na caixa vermelha abaixo) para visualizar a lista de matrizes de teste para outros apps associados ao seu projeto do Firebase.
Exemplo da página da lista de matrizes de teste
Uma matriz de teste pode ser aprovada, reprovada ou apresentar um resultado inconclusivo. Uma matriz de teste será exibida como reprovada ou inconclusiva se alguma execução de teste nessa matriz falhar ou não for concluída.
Interpretar os resultados do teste Robo
Se você tiver executado seus testes com o Robo, os resultados incluirão vídeos e capturas de tela do Robo rastreando sua IU, além das métricas de teste normais. Esses vídeos e capturas de tela têm indicações visuais das ações executadas pelo Robo durante o rastreamento, como no recurso "Mostrar toques" no Android. Use as indicações para acompanhar o progresso do Robo e reproduzir os bugs que forem descobertos.
Exemplo de vídeo com resultados do teste Robo
Interpretar os resultados de uma única execução de teste
Na página de resultados da matriz, clique em uma das execuções de teste para ver o resultado dela.
Exemplo de página de resultados da execução de teste
Nessa página, é mostrado o tempo necessário para cada execução de teste. Também é possível ver os resultados de casos de teste específicos que correspondem a métodos no seu APK de teste (para testes de instrumentação), além dos resultados detalhados do teste, que incluem registros, capturas de tela e vídeos. Para o Teste Robo, os resultados detalhados também incluem um mapa de atividades que mostra graficamente os caminhos da IU acessados pelo teste.
Resultados particionados dos testes de instrumentação
Para ajudar você a interpretar os resultados dos testes de instrumentação, o Test Lab separa cada teste em uma página de relatório detalhada que inclui rastreamentos de pilha, registros e vídeos. Esse recurso funciona mesmo se você não usar o Android Orchestrator.
Exemplo de página de resultados de casos de teste
Interpretar resultados de acessibilidade
Os Testes Robo usam o Scanner de acessibilidade do Android para detectar problemas de acessibilidade no app. Também é possível executar uma verificação localmente no seu dispositivo. Para instruções sobre como analisar e interpretar os resultados de acessibilidade do seu Teste Robo, acesse Introdução ao Scanner de acessibilidade.
Para informações gerais sobre como melhorar a acessibilidade do seu app, acesse a documentação de acessibilidade para desenvolvedores Android.
Métricas de desempenho
Testes executados em dispositivos físicos também retornam métricas de desempenho:
Métrica | Configuração necessária do dispositivo |
---|---|
Horário de inicialização do app | API 19+ |
Uso da CPU | API 21+ |
Uso de memória | |
Atividade da rede | |
Quadros por segundo | API 21+ e inclui um SurfaceView |
Resultados detalhados do teste
Os resultados detalhados ficam disponíveis por 90 dias após a execução e são armazenados em um bucket Google Cloud Storage. Além disso, eles podem ser vistos no Console do Firebase. Para ver os resultados detalhados no bucket do Cloud Storage, clique em Resultados do teste na página de resultados da execução do teste. Quando os resultados detalhados do teste não estiverem mais disponíveis, ainda será possível ver quais deles foram aprovados ou reprovados.
Para armazenar os resultados detalhados do teste por mais de 90 dias, é preciso enviá-los para um bucket do Cloud Storage de sua propriedade por meio da opção --results-bucket da linha de comando gcloud. Em seguida, é possível definir a configuração Idade para determinar por quanto tempo os resultados são armazenados no seu intervalo do Cloud Storage. Consulte Condições de ciclo de vida para saber como alterar a configuração de Idade.