Ir para o console

Visão geral do Firebase Test Lab

Com o Firebase Test Lab, você pode testar seu app em uma variedade de dispositivos e configurações. Desse modo, é possível ter uma noção melhor de como ele funcionará para seus usuários. Para facilitar, o Test Lab executa seus testes amplos em lotes chamados de matrizes de teste. Em cada matriz, seu app é testado em várias combinações de configurações de dispositivos.

Dimensões × execuções de teste = matriz de teste

  • Dimensões de teste: atributos do dispositivo para testar seu app, incluindo o modelo, versão do SO, localidade e orientação da tela.

  • Execuções de teste: execuções individuais de teste, cada uma com uma combinação exclusiva de dimensões que você selecionou para testar.

  • Matriz de teste: os resultados das suas execuções de teste nas dimensões selecionadas. Se qualquer execução de teste na matriz falhar, o Test Lab marcará a matriz inteira como reprovada.

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

  • A integração com o Android Studio permite testar seu app a partir do seu ambiente de desenvolvimento.
  • Com a interface de linha de comando do gcloud, você executa os testes a partir da linha de comando de modo interativo. Esse é 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 Console do Firebase, 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 criados por você ou pela sua equipe 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 compatibilidade para um "modo de demonstração" para executar o jogo enquanto as ações de um jogador são simuladas. Esse modo pode incluir vários loops ou cenários. Eles são organizados de maneira lógica com marcadores, para que os loops relacionados possam ser executados juntos. 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. Para saber mais, consulte Dispositivos disponíveis.

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. Consulte Analisar os resultados do Firebase Test Lab para ver detalhes.

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 Test Lab está disponível para uso com os planos de preços: Spark (gratuito), Flame e Blaze.

Cota para os planos Spark e Flame

Nos planos Spark e Flame, é possível testar com uma cota diária limitada para execuções de teste: 10 dispositivos virtuais e 5 dispositivos físicos (para um máximo de 15 execuções de teste por dia). Esse limite é compartilhado entre os tipos de teste (Instrumentação, Robo, Loop de jogo) e matrizes.

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. Basta clicar em FAZER UPGRADE no Console do Firebase e em SELECIONAR PLANO na coluna do plano Blaze.

O uso gratuito do plano Spark está incluído no plano Blaze.

  • 15 horas de testes em dispositivos físicos
  • 30 horas de testes em dispositivos virtuais

Todo uso acima desses limites tem 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 Google Play Services

Os dispositivos do Test Lab geralmente executam a versão mais recente do Google Play Services. Devido à quantidade de dispositivos e configurações, pode ser necessário alguns dias para que o Test Lab atualize os dispositivos após uma nova versão do Google Play Services. Para garantir que seus testes sejam executados corretamente, verifique se o app usa uma versão do SDK do Google Play Services que seja igual ou anterior à mostrada abaixo.

Versão do SDK do Google Play Services compatível: 11.8.0

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 pertencentes 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 (em inglês):

    Dispositivos físicos

    • 108.177.6.0/23

    Dispositivos virtuais

    • 35.192.160.56/29
    • 35.196.166.80/29
    • 35.196.169.240/29
    • 35.203.128.0/28
    • 35.234.176.160/28
    • 199.192.115.0/30
    • 199.192.115.8/30
    • 199.192.115.16/29

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 são excluídas após o uso. Assim, cada execução do teste usa uma nova instância de dispositivo virtual.