Testar aplicativos Android automaticamente

Este guia descreve como distribuir builds automaticamente para testadores usando o recurso App Distribution Automated Tester no Firebase console. O recurso Automated Tester fornece uma ferramenta de teste de fumaça sempre pronta e fácil de usar para seu aplicativo.

Antes de você começar

Adicione o Firebase ao seu projeto Android , caso ainda não o tenha feito.

Se você não estiver usando nenhum outro produto Firebase, basta criar um projeto e registrar seu aplicativo. No entanto, se você decidir usar produtos adicionais no futuro, conclua todas as etapas em Adicionar o Firebase usando o Firebase Console .

Quando estiver pronto para distribuir uma versão de pré-lançamento do seu aplicativo aos testadores, crie seu APK usando o processo normal. Você deve assinar o APK com sua chave de depuração ou chave de assinatura do aplicativo.

Distribua seu aplicativo para o Automated Tester usando o console do Firebase

Para distribuir seu aplicativo para o Automated Tester, faça upload do arquivo APK usando o console do Firebase:

  1. Abra a página App Distribution do console do Firebase. Selecione seu projeto do Firebase quando solicitado.
  2. Na página Lançamentos , selecione o aplicativo que deseja distribuir no menu suspenso.
  3. Arraste o arquivo APK do seu aplicativo para o console para carregá-lo.
  4. Quando o upload for concluído, selecione Testador Automatizado na barra de pesquisa Adicionar testadores ou grupos .
  5. Para personalizar seu teste automatizado, clique no ícone Editar e selecione as personalizações na caixa de diálogo Personalizar seu teste automatizado .
  6. (Opcional) Na caixa de diálogo de configuração do dispositivo , selecione o nível de API, a orientação do dispositivo e a localidade que atendem às suas especificações de teste.
  7. (Opcional) Clique no menu suspenso Credenciais de login para criar um nome de usuário e uma senha personalizados que podem ser usados ​​durante o teste se seu aplicativo exigir credenciais de login.
  8. Clique em Distribuir . Você também pode adicionar uma nota de versão opcional para seu aplicativo.

Distribua seu aplicativo para o Automated Tester usando a CLI do Firebase

Execute o comando appdistribution:distribute para fazer upload do seu aplicativo e distribuí-lo aos testadores. Use os parâmetros a seguir para configurar sua distribuição para o recurso Automated Tester:

appdistribution:distribuir opções
--test-devices ou --test-devices-file

Os dispositivos de teste que você deseja distribuir são compilados para o recurso Automated Tester.

Você pode especificar os dispositivos de teste como uma lista de dispositivos de teste separados por ponto e vírgula:

--test-devices: "model=shiba, version=34, locale=en, orientation=portrait;model=b0q, version=33, locale=en, orientation=portrait"

Ou você pode especificar o caminho para um arquivo de texto simples contendo uma lista de dispositivos de teste separados por ponto e vírgula:

--test-devices-file: "/path/to/test-devices.txt"
--test-username

O nome de usuário para login automático a ser usado durante testes automatizados .

--test-password ou --test-password-file

A senha para login automático a ser utilizada durante testes automatizados .

Ou você pode especificar o caminho para um arquivo de texto simples contendo uma senha:

--test-password-file: "/path/to/test-password.txt"
--test-username-resource

Nome do recurso para o campo de nome de usuário para login automático a ser usado durante testes automatizados .

--test-password-resource

Nome do recurso do campo de senha para login automático a ser utilizado durante testes automatizados .

--test-non-blocking

Execute testes automatizados de forma assíncrona. Visite o console do Firebase para ver os resultados dos testes automáticos.

Para obter mais informações sobre os primeiros passos com a CLI do Firebase e diferentes maneiras de configurar sua distribuição, consulte Distribuir aplicativos Android para testadores usando a CLI do Firebase .

Distribua seu aplicativo para o Automated Tester usando Gradle

Você pode configurar o App Distribution adicionando pelo menos uma seção firebaseAppDistribution e usar os seguintes parâmetros para configurar a distribuição para o recurso Automated Tester:

Parâmetros de compilação de distribuição de aplicativos
testDevices ou testDevicesFile

Os dispositivos de teste para os quais você deseja distribuir compilações usando testes automatizados .

Você pode especificar os dispositivos de teste como uma lista separada por ponto e vírgula de especificações de dispositivos

testDevices="model=shiba, version=34, locale=en, orientation=portrait;model=b0p, version=33, locale=en, orientation=portrait"

Ou você pode especificar o caminho para um arquivo que contém uma lista de especificações de dispositivos separadas por ponto e vírgula:

testDevicesFile="/path/to/testDevices.txt"
testUsername

O nome de usuário para login automático a ser usado durante testes automatizados .

testUsernameResource

Nome do recurso para o campo de nome de usuário para login automático a ser usado durante testes automatizados .

testPassword ou testPasswordFile

A senha para login automático a ser utilizada durante testes automatizados .

Ou você pode especificar o caminho para um arquivo de texto simples contendo uma senha:

testPasswordFile="/path/to/testPassword.txt"
testPasswordResource

Nome do recurso do campo de senha para login automático a ser utilizado durante testes automatizados .

testNonBlocking

Execute testes automatizados de forma assíncrona. Visite o console do FIrebase para obter os resultados dos testes automáticos.

Para obter mais informações sobre os primeiros passos com o Gradle e diferentes maneiras de configurar sua distribuição, consulte Distribuir aplicativos Android para testadores usando o Gradle .

Distribua seu aplicativo para o Automated Tester usando fastlane

Em uma via ./fastlane/Fastfile , adicione um bloco firebase_app_distribution . Use os parâmetros a seguir para configurar sua distribuição para o recurso Automated Tester:

Parâmetros firebase_app_distribution
test_devices ou test_devices_file

Os dispositivos de teste que você deseja distribuir são compilados para o recurso Automated Tester. Você pode especificar os dispositivos de teste como uma lista de dispositivos de teste separados por ponto e vírgula:

test_devices: "model=shiba, version=34, locale=en, orientation=portrait;model=b0q, version=33, locale=en, orientation=portrait"

Ou você pode especificar o caminho para um arquivo de texto simples contendo uma lista de dispositivos de teste separados por ponto e vírgula:

test_devices_file: "/path/to/test-devices.txt"
test_username

O nome de usuário para login automático a ser usado durante testes automatizados .

test_password ou test_password_file

A senha para login automático a ser utilizada durante testes automatizados .

Ou você pode especificar o caminho para um arquivo de texto simples contendo uma senha:

test_password_file: "/path/to/test-password.txt"
test_username_resource

Nome do recurso para o campo de nome de usuário para login automático a ser usado durante testes automatizados .

test_password_resource

Nome do recurso do campo de senha para login automático a ser utilizado durante testes automatizados .

test_non_blocking

Execute testes automatizados de forma assíncrona. Visite o console do FIrebase para obter os resultados dos testes automáticos.

Para obter mais informações sobre os primeiros passos com o fastlane e diferentes maneiras de configurar sua distribuição, consulte Distribuir aplicativos Android para testadores usando o fastlane .

Status de rastreamento de teste automático

Para ajudar você a interpretar os resultados do teste, a guia Resultados do teste automatizado mostra quaisquer problemas de teste, capturas de tela do aplicativo e um vídeo do rastreamento do teste para cada dispositivo. O status do teste pode ser encontrado na página de resultados do teste:

Status do rastreamento Descrição
Pendente O teste automático ainda está em execução e seus resultados estarão disponíveis em breve.
Passado O teste automático rastreou seu aplicativo com sucesso e não encontrou nenhuma falha.
Fracassado O teste automático falhou porque seu aplicativo travou durante o teste.
Inconclusivo O teste automático falhou devido a erros de infraestrutura.