O Agente de Teste de Apps é um agente de geração, gerenciamento e
execução de casos de teste com tecnologia Gemini em Firebase. Você define
metas de teste em linguagem natural, e o agente usa IA para entender e navegar
no app, simular interações do usuário e fornecer resultados de teste detalhados.
Se você não estiver usando outros produtos do Firebase, basta criar um
projeto e registrar seu app. Não é necessário adicionar SDKs ao app.
No entanto, se você decidir usar outros produtos no futuro, conclua
todas as etapas em Adicionar o Firebase usando o
console do Firebase.
Quando você estiver pronto para distribuir uma versão de pré-lançamento do seu app para os testadores,
crie um APK ou AAB usando seu processo normal e faça o upload dele para a
App Distribution no console Firebase.
Você precisa assinar o APK com sua chave de depuração ou de assinatura do app.
Criar um caso de teste
Para executar testes guiados por IA, o agente de teste de apps usa seus casos de teste de linguagem natural
para executar testes no seu app.
Cada caso de teste é dividido em etapas, que serão executadas em sequência.
As etapas permitem dividir o caso de teste em fases, cada uma com seus próprios
critérios de sucesso. O agente pode realizar várias ações durante qualquer etapa.
Para criar um caso de teste, abra a página App Distribution do
console Firebase
e siga estas etapas:
Na guia Casos de teste, clique em Novo caso de teste. Se você não quiser
criar seu próprio caso de teste, modifique ou use o caso de teste de exemplo
fornecido.
Na caixa de diálogo Adicionar caso de teste, dê um nome ao caso de teste. Ele é usado para identificar o teste, mas é ignorado pelo agente.
Considere dividir o teste em várias etapas clicando no botão Adicionar outra etapa.
Dê a cada etapa uma meta que descreva o que o agente de teste de app precisa fazer durante essa etapa.
(Opcional) Adicione uma Dica para fornecer mais informações e ajudar o agente de teste
de apps a entender e navegar no app durante essa etapa.
(Opcional) Adicione Critérios de sucesso para ajudar o agente de teste de app a determinar quando a etapa foi concluída.
Clique em Salvar quando terminar de personalizar o teste.
Exemplo de caso de teste
Confira a seguir um exemplo de como criar um caso de teste usando o agente de teste de
apps:
Como testar a página inicial
Título de teste
Carregamentos da página inicial
Meta
Carregar a página inicial
Dica
Navegue pelas telas de integração. Dispense todos os pop-ups. Não faça login.
Critérios de sucesso
A página inicial do app principal está visível na tela, todas as imagens foram carregadas e nenhum erro é exibido.
Executar um teste
O agente de teste de apps permite que você execute testes guiados por IA no console
clicando no botão Executar testes na página "Lançamentos" ou "Casos de teste".
Isso abre a tela de personalização do agente do Teste de apps, em que você pode escolher um
ou mais casos de teste para que o agente execute. Você também
pode escolher os dispositivos que quer testar e se quer fornecer
credenciais de login.
Também é possível executar um teste de rastreamento aleatório mudando o tipo de teste.
Os testes de rastreamento aleatórios usam o recurso
Testador automatizado.
É possível conferir os resultados dos testes na página Versões na guia Agente
de teste de app de uma versão. O botão Ver detalhes abre a caixa de diálogo "Test
Results" e mostra todos os problemas, capturas de tela do app e as ações
que o Gemini fez durante o teste.
Testar automaticamente seus builds
Para executar automaticamente os testes do agente de Teste de apps nos seus novos builds, por exemplo, de pipelines CI/CD, é possível distribuir seus builds para o agente usando
os plug-ins do Gradle ou do fastlane do App Distribution ou a CLI do Firebase.
Testar automaticamente seus builds com a CLI do Firebase
É necessário especificar pelo menos um dispositivo de teste e um ID do caso de teste para usar o recurso
do agente de teste de apps. Os IDs dos casos de teste podem ser encontrados e transferidos por download na página
"Casos de teste" do console Firebase. Para mais informações sobre como começar a usar a CLI do Firebase e diferentes maneiras de configurar a distribuição, consulte Distribuir apps Android para testadores com a CLI do Firebase.
Execute o comando appdistribution:distribute para fazer upload do app
e use os seguintes parâmetros para configurar a distribuição para o recurso
Agente de teste de app:
Opções appdistribution:distribute
--test-devices ou
--test-devices-file
Os dispositivos de teste em que você quer distribuir builds para o recurso do agente de teste de apps.
É possível especificar os dispositivos de teste como uma lista de dispositivos de teste separada por ponto e vírgula:
Executar testes de forma assíncrona. Acesse o console do Firebase para conferir os resultados do teste automático.
--test-case-ids ou
--test-case-ids-file
Uma lista separada por vírgulas de IDs de casos de teste para executar testes automatizados com tecnologia de IA:
--test-case-ids: "load-app,play-the-first-level"
Também é possível especificar o caminho para um arquivo de texto simples que contenha uma lista de IDs de casos de teste separados por vírgulas ou por nova linha:
É necessário especificar pelo menos um dispositivo de teste e um ID do caso de teste para usar o recurso
do agente de teste de apps. Os IDs dos casos de teste podem ser encontrados e transferidos por download na página
"Casos de teste" do console Firebase. Para mais informações sobre como começar a usar o Gradle e diferentes maneiras de configurar sua distribuição, consulte Distribuir apps Android para testadores com o Gradle.
Para configurar o App Distribution, adicione pelo menos uma seção firebaseAppDistribution
e use os parâmetros a seguir para configurar a distribuição para o
recurso do agente de teste de app:
Parâmetros do build do App Distribution
testDevices ou
testDevicesFile
Os dispositivos de teste em que você quer distribuir builds para o recurso do agente de teste de apps.
É possível especificar os dispositivos de teste como uma lista de especificações do dispositivo separada por ponto e vírgula:
Também é possível especificar o caminho para um arquivo que contenha uma lista de especificações do dispositivo separada por ponto e vírgula:
testDevicesFile="/path/to/testDevices.txt"
testUsername
O nome de usuário para o login automático a ser usado durante os testes.
testPassword ou
testPasswordFile
A senha para login automático que será usada durante os testes.
Se preferir, é possível especificar o caminho para um arquivo de texto simples que contenha uma senha:
testPasswordFile="/path/to/testPassword.txt"
testNonBlocking
Executar testes de forma assíncrona. Acesse o console do Firebase para conferir os resultados do teste automático.
testCases ou
testCasesFile
Uma lista separada por vírgulas de IDs de casos de teste para executar testes automatizados com tecnologia de IA:
testCases: "load-app,play-the-first-level"
Também é possível especificar o caminho para um arquivo de texto simples que contenha uma lista de IDs de casos de teste separados por vírgulas ou por nova linha:
testCasesFile: "/path/to/test-case-ids.txt"
Testar automaticamente seus builds com o fastlane
É necessário especificar pelo menos um dispositivo de teste e um ID do caso de teste para usar o recurso
do agente de teste de apps. Os IDs dos casos de teste podem ser encontrados e transferidos por download na página
"Casos de teste" do console Firebase. Para mais informações sobre como começar a usar o fastlane e diferentes maneiras de configurar a distribuição, consulte Distribuir apps Android para testadores com o fastlane.
Em uma linha ./fastlane/Fastfile, adicione um bloco firebase_app_distribution. Use os seguintes parâmetros para
configurar a distribuição para o recurso Agente de teste de app:
Parâmetros firebase_app_distribution
test_devices ou
test_devices_file
Os dispositivos de teste em que você quer distribuir builds para o recurso do agente de teste de apps. É possível especificar os dispositivos de teste como uma lista de dispositivos de teste separada por ponto e vírgula:
Também é possível especificar o caminho para um arquivo de texto simples que contenha uma lista de dispositivos de teste separada por ponto e vírgula:
test_devices_file: "/path/to/test-devices.txt"
test_username
O nome de usuário para o login automático a ser usado durante os testes.
test_password ou
test_password_file
A senha para login automático que será usada durante os testes.
Se preferir, é possível especificar o caminho para um arquivo de texto simples que contenha uma senha:
test_password_file: "/path/to/test-password.txt"
test_non_blocking
Executar testes de forma assíncrona. Acesse o console do Firebase para conferir os resultados do teste automático.
--test_case_ids ou
--test_case_ids_file
Uma lista separada por vírgulas de IDs de casos de teste para executar testes automatizados com tecnologia de IA:
--test_case_ids: "load-app,play-the-first-level"
Também é possível especificar o caminho para um arquivo de texto simples que contenha uma lista de IDs de casos de teste separados por vírgulas ou por nova linha:
Se os resultados do teste forem diferentes do esperado, você poderá depurar o teste
usando a alternância Mostrar a visualização do agente em Ver detalhes na página
"Resultados do teste". A visualização do agente mostra os elementos na tela que o agente de
teste de apps conseguiu detectar ao usar as informações de acessibilidade do app.
Se você quiser conferir melhor o que o agente viu, faça o download
dessas informações no menu de ações flutuantes.
Também é possível usar o botão Ver artefatos na página "Resultados do teste" para conferir
todos os vídeos, registros e artefatos do Cloud dos resultados do teste.
Limitações e problemas conhecidos
A visualização do agente de Teste de apps tem algumas limitações conhecidas:
Como o agente de teste de apps usa a IA generativa para testar seu app, às vezes
ele realiza ações diferentes, mas segue as mesmas
instruções.
O agente de teste de apps só oferece suporte às seguintes ações: tocar, inserir
texto, rolar para cima, rolar para baixo e esperar.
O agente de Teste de apps tem problemas para executar testes que contêm apenas uma
etapa que exige muitas ações para ser concluída. Ele tem um desempenho melhor quando tarefas
complexas são divididas em várias etapas menores.
Às vezes, o agente de teste de apps não rola para mostrar outros elementos fora
da tela. Isso acontece com mais frequência quando não há indicação visual de
rolagem. Como solução alternativa, o campo "dicas" pode ser usado para sugerir
a rolagem.
Às vezes, o agente de teste de apps tem problemas para contar, por exemplo,
realizar uma ação um número específico de vezes.
Testar cotas
Durante a visualização, os testes guiados por IA serão oferecidos sem custo
dentro de um limite de cota. O limite de cota padrão é de 100 testes por mês.
Se você executar vários casos de teste ou o mesmo caso de teste
em vários dispositivos, isso será considerado como vários testes. Por exemplo, se você executar dois
casos de teste em dois dispositivos, isso vai contar como um total de quatro testes.
Para aumentar sua cota acima do limite padrão, entre em contato com o suporte do
Firebase com seu caso de uso.