Visão geral do Firebase Test Lab para Android

O Firebase Test Lab para Android executa testes em uma matriz de teste criada por você para validar seu app em uma série de tipos e configurações de dispositivos. Para você entender como funciona, primeiro precisamos explicar as dimensões e as execuções do teste.

  • Dimensão de teste. Uma dimensão de teste é um conjunto de atributos relacionados a dispositivos. As dimensões utilizadas pelo Test Lab são o modelo, o nível da API do Android, a localidade e a orientação da tela.

  • Execução de teste. Cada combinação válida das dimensões do teste que você selecionou para sua matriz de teste é uma execução de teste. O Test Lab oferece suporte ao teste do app em até 200 combinações únicas de cada vez. Selecione as combinações de modelo e de nível da API do Android a serem usadas no teste para que ele se concentre, por exemplo, na validação de uma correção de bug. Cada execução pode ser aprovada ou reprovada. Se uma delas for reprovada, toda a matriz de teste será marcada como reprovada.

  • Matriz de teste. A matriz de teste é o conjunto de execuções de teste selecionado. Quando o teste é executado nessa matriz, você recebe os resultados de cada execução válida, criada a partir da combinação dos atributos de dimensão.

Escolha uma das seguintes formas para iniciar o teste do app:

  • Com a integração do Android Studio, você testa o app a partir do seu ambiente de desenvolvimento.
  • Com a interface de linha de comando gcloud, você executa os testes a partir da linha de comando de modo interativo, além de ser o método ideal para a criação de scripts como parte do processo automatizado de desenvolvimento e testes.
  • Com a IU do Test Lab no Firebase console, você faz o upload de um binário do app e inicia o teste em qualquer lugar.

O app também pode ser testado com o Test Lab quando você envia e publica os arquivos APK do seu app na Play Store usando o canal alfa ou beta. Para mais informações, consulte Usar relatórios de pré-lançamento para identificar problemas e Teste Robo.

Escolher o método do teste

O Test Lab pode ser usado para validar a estabilidade da experiência do usuário e a compatibilidade do app em diversos dispositivos.

Dois métodos estão disponíveis para ajudá-lo a testar o seu app: os testes de instrumentação e o teste Robo do Test Lab.

Testes de instrumentação

Os testes de instrumentação são aqueles que você ou sua equipe criou especificamente para testar o app usando as bibliotecas de teste do Android Espresso e UI Automator 2.0. Eles são executados por até 30 minutos em dispositivos físicos e por até 60 minutos em dispositivos virtuais. Os resultados são fornecidos para todos os casos de teste concluídos durante esse tempo.

Ao escrever testes de instrumentação, você cria um segundo módulo APK. Mais tarde, você fará o upload dele com o módulo APK do seu app no Test Lab. Para saber mais sobre a criação de APKs de teste, consulte Testar seu app.

Teste Robo

Mesmo se não tiver criado nenhum teste de instrumentação, você pode usar o teste Robo para analisar o app simulando as ações do usuário. Para saber mais, consulte Teste Robo.

Teste de loop de jogo

Para a execução de testes de app para jogos, o Test Lab agora inclui suporte em versão Beta que usa um "modo de demonstração" no qual o jogo é executado enquanto as ações de um jogador são simuladas. Esse modo pode incluir vários loops ou cenários. Eles são organizados logicamente com marcadores para que os loops relacionados possam ser executados em conjunto. Para saber mais, consulte Teste de loop de jogo.

Escolher seu tipo de dispositivo

O Test Lab é compatível com testes para diversas marcas e modelos de dispositivos Android instalados e em execução no data center do Google. Esses testes ajudam a detectar problemas que não ocorreriam em um emulador do Android.

No momento, os seguintes tipos de dispositivos estão disponíveis:

Tabela 1: dispositivos usados pelo Test Lab

Marca Modelos disponíveis
Asus Nexus 7
Google Nexus 6P, Pixel
HTC Nexus 9, HTC One (M8)
LG LG G4, LG G3, Nexus 5, Nexus 5X, Nexus 4
Motorola Moto E, Moto G (1ª, 2ª e 3ª geração), Moto G4, Moto G4 Plus, Moto X, Nexus 6
OnePlus OnePlus One
Sharp SH-04H
Samsung Galaxy J5, Galaxy Note 2, Galaxy Note 3 Duos, Galaxy Note 4, Galaxy S3, Galaxy S6, Galaxy S6 Edge, Galaxy S7, Galaxy S7 Edge Galaxy Tab 3, Nexus 10
Sony Xperia Z2, Xperia Z3, Xperia Z5 Compact, Xperia X

Revisar os resultados do teste

Independentemente de como você inicia os testes, todos os resultados do teste são gerenciados pelo Test Lab e podem ser vistos on-line. Os resultados do teste incluem registros do teste e detalhes de qualquer falha do app. Vídeos e capturas de tela também estão disponíveis para o teste Robo. Para mais detalhes, consulte Analisar resultados do Firebase Test Lab para Android.

Ao iniciar um teste no Android Studio, também é possível analisar os resultados do teste a partir do seu ambiente de desenvolvimento.

Cota e faturamento

O Firebase está disponível em três planos de preços: Spark (gratuito), Flame e Blaze.

Cota para os planos Spark e Flame

Nos planos Spark e Flame, você usa o Test Lab gratuitamente. Nesse planos, os testes podem ser feitos com uma cota diária limitada de execuções de dez dispositivos virtuais e cinco físicos, com até quatro dispositivos em cada matriz de teste.

Faturamento do plano Blaze

Para usar o Test Lab sem limites no uso diário ou no tamanho da matriz de teste, após selecionar o seu projeto, atualize para o plano Firebase Blaze. Para isso, clique em FAZER UPGRADE no Firebase console e em SELECIONAR PLANO na coluna de planos Blaze.

Com o plano Blaze, você pode usar o Test Lab para testar o seu app com as seguintes taxas por hora:

As cobranças são calculadas por minuto, e você será cobrado somente pelo tempo necessário para executar os testes, não pelo tempo para instalar o app nem para coletar os resultados do teste. Depois de executar a matriz de teste, veja o tempo necessário para executar cada teste em cada dispositivo nos resultados de execução do teste e nas páginas de resultados da matriz de teste. O tempo faturado para cada execução do teste é arredondado para o minuto mais próximo.

Test Lab e publicidade mobile

Para desenvolvedores de app que usam ou trabalham com provedores de publicidade digital como, por exemplo, redes de anúncios e plataformas de demanda, além dos próprios provedores:

O Test Lab fornece aos desenvolvedores uma infraestrutura escalável de teste de app que automatiza esse processo. Infelizmente, essa funcionalidade pode ser usada indevidamente por apps maliciosos desenvolvidos para gerar receita fraudulenta com anúncios.

Para minimizar esse problema:

  • os desenvolvedores de apps precisam notificar os provedores de publicidade digital com os quais trabalham para que filtrem as receitas e todo o tráfego correspondente gerado a partir de dispositivos que pertencem a provedores de testes, incluindo o Test Lab;
  • os provedores de publicidade digital podem filtrar as receitas dos anúncios e todo o tráfego correspondente gerado pelo Test Lab. Para isso, eles precisam separar o tráfego proveniente dos seguintes blocos de endereços IP: 108.177.6.0/23 (para dispositivos físicos) e 104.196.0.0/16 (para dispositivos virtuais).

Limpeza dos dispositivos

O Google leva a segurança dos dados do seu app muito a sério. Para os dispositivos físicos usados pelo Test Lab, seguimos as práticas recomendadas padrão do setor, removendo os dados do app desses dispositivos depois de cada teste. Assim, garantimos que eles estejam prontos para executar novos testes. Nos dispositivos onde a restauração de uma imagem de recuperação personalizada é possível, isso é feito entre as execuções de teste.

No caso dos dispositivos virtuais usados pelo Test Lab, as instâncias deles são excluídas após o uso. Assim, cada execução do teste usa uma nova instância de dispositivo virtual.

Enviar comentários sobre…

Precisa de ajuda? Acesse nossa página de suporte.