O Firebase vai estar no Google I/O em 10 de maio! Inscreva-se agora

Executar testes com o Android Studio

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

O Firebase Test Lab oferece uma infraestrutura baseada na nuvem para testar apps e recursos do Android com integração total ao Android Studio para executar testes instrumentados e analisar os resultados.

Neste guia, descrevemos como modificar testes instrumentados no Android Studio para integrar e executar esses testes com o Test Lab. Para ver instruções sobre como usar o Test Lab na IU do Android Studio para criar uma matriz de teste, executar um teste instrumentado e ver os resultados, consulte Executar testes com o Firebase Test Lab.

Fazer capturas de tela

O Test Lab oferece suporte para capturas de tela durante a execução de testes instrumentados. Para saber como fazer capturas de tela, consulte Adicionar a biblioteca de capturas de tela ao seu projeto.

Criar testes usando o Espresso Test Recorder

A ferramenta Espresso Test Recorder permite que você crie testes de IU para o app sem precisar escrever nenhum código de teste. É possível gravar as interações com um dispositivo e adicionar declarações para verificar os elementos da IU em snapshots específicos do app. Em seguida, o Espresso Test Recorder usa a gravação salva e gera automaticamente um teste de IU correspondente na ferramenta, que você pode executar para testar o app no Test Lab.

Para saber mais, consulte Criar testes de IU com o Espresso Test Recorder.

Modificar o comportamento do teste instrumentado no Test Lab

O Test Lab oferece uma variável de sistema que é possível adicionar aos testes instrumentados para que eles se comportem de maneira diferente quando você os executar no Test Lab ou no seu próprio dispositivo de teste ou emulador.

O exemplo de código a seguir lê uma propriedade do sistema firebase.test.lab e define uma string testLabSetting como true caso o teste seja executado no Test Lab. Em seguida, ele usa o valor dessa string para verificar se as outras instruções foram executadas:

Kotlin+KTX

val testLabSetting = Settings.System.getString(contentResolver, "firebase.test.lab")
if ("true" == testLabSetting) {
    // Do something when running in Test Lab
    // ...
}

Java

String testLabSetting = Settings.System.getString(getContentResolver(), "firebase.test.lab");
if ("true".equals(testLabSetting)) {
    // Do something when running in Test Lab
    // ...
}