Solução de problemas e soluções do Test Lab Perguntas frequentes
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Esta página fornece ajuda para solução de problemas e respostas a perguntas frequentes sobre a execução de testes com o Firebase Test Lab. Problemas conhecidos também são documentados. Se você não encontrar o que procura ou precisar de ajuda adicional, participe do canal #test-lab no Firebase Slack ou entre em contato com o suporte do Firebase .
Solução de problemas
Por que meu teste está demorando tanto para ser executado?
Ao selecionar um dispositivo com alto nível de capacidade no catálogo do Test Lab, os testes podem iniciar mais rapidamente. Quando um dispositivo tem baixa capacidade, os testes podem demorar mais para serem executados. Se o número de testes invocados for muito maior que a capacidade dos dispositivos selecionados, os testes poderão demorar mais para serem concluídos.
Os testes executados em qualquer nível de capacidade do dispositivo podem demorar mais devido aos seguintes fatores:
Tráfego, que afeta a disponibilidade do dispositivo e a velocidade do teste.
Falhas de dispositivos ou infraestrutura, que podem acontecer a qualquer momento. Para verificar se existe uma infraestrutura reportada para o Test Lab, consulte o painel de status do Firebase .
Para saber mais sobre a capacidade do dispositivo no Test Lab, consulte informações de capacidade do dispositivo para Android e iOS .
Por que estou recebendo resultados de testes inconclusivos?
Resultados de testes inconclusivos geralmente ocorrem devido a execuções de testes canceladas ou erros de infraestrutura.
Erros de infraestrutura são causados por problemas internos do Test Lab, como erros de rede ou comportamentos inesperados do dispositivo. O Test Lab descontinua internamente as execuções de testes que produzem erros de infraestrutura diversas vezes antes de relatar um resultado inconclusivo; no entanto, você pode desabilitar essas tentativas usando failFast .
Para determinar a causa do erro, siga estas etapas:
Tente novamente o teste no Test Lab para verificar se ele é reproduzível.
Tente executar o teste em um dispositivo ou tipo de dispositivo diferente, se aplicável.
Se o problema persistir, entre em contato com a equipe do Test Lab no canal #test-lab no Firebase Slack.
Por que a fragmentação fez meus testes durarem mais?
A fragmentação pode fazer com que seus testes sejam executados por mais tempo quando o número de estilhaços especificado exceder o número de dispositivos disponíveis para uso no Test Lab. Para evitar esta situação, tente mudar para um dispositivo diferente. Para obter mais informações sobre como escolher um dispositivo diferente, consulteCapacidade do dispositivo .
Por que está demorando muito para meu teste começar?
Quando você envia uma solicitação de teste, seu aplicativo é primeiro validado, assinado novamente, etc., em preparação para a execução de testes em um dispositivo. Normalmente, esse processo é concluído em menos de alguns segundos, mas pode ser afetado por fatores como o tamanho do seu aplicativo.
Depois que seu aplicativo estiver preparado, as execuções de teste serão agendadas e permanecerão em fila até que um dispositivo esteja pronto para executá-lo. Até que todas as execuções de teste terminem de ser executadas, o status da matriz será "Pendente" (independentemente de as execuções de teste estarem na fila ou em execução ativa).
Por que está demorando muito para meu teste terminar?
Após a conclusão da execução do teste, os artefatos de teste são baixados do dispositivo, processados e enviados para o Cloud Storage. A duração desta etapa pode ser afetada pela quantidade e tamanho dos artefatos.
Perguntas frequentes
Quais são as cotas gratuitas do Test Lab? O que devo fazer se acabar?
O Firebase Test Lab oferece cotas gratuitas para testes em dispositivos e para uso de APIs do Cloud. Observe que a cota de teste usa o plano de preços padrão do Firebase, enquanto as cotas da API Cloud não.
Cota de testes
As cotas de teste são determinadas pelo número de dispositivos usados para executar testes. O plano Firebase Spark possui uma cota fixa de testes sem nenhum custo para os usuários. Para o plano Blaze, suas cotas poderão aumentar se o uso do Google Cloud aumentar ao longo do tempo. Se você atingir sua cota de testes, espere até o dia seguinte ou atualize para o plano Blaze se você estiver atualmente no plano Spark. Se você já está no plano Blaze, pode solicitar um aumento de cota. Para obter mais informações, consulte Testando cota .
A API Cloud Testing vem com dois limites de cota: solicitações por dia por projeto e solicitações a cada 100 segundos por projeto. Você pode monitorar seu uso no console do Google Cloud .
Cota da API Cloud Tool Results
A API Cloud Tool Results vem com dois limites de cota: consultas por dia por projeto e consultas a cada 100 segundos por projeto. Você pode monitorar seu uso no console do Google Cloud .
Envie uma solicitação de cotas mais altas editando-as diretamente no console do Google Cloud (observe que a maioria dos limites é definida como máximo por padrão) ou
Solicite cotas de API mais altas preenchendo um formulário de solicitação no console do Google Cloud ou entrando em contato com o suporte do Firebase .
Como posso saber se o tráfego que chega ao meu back-end vem do Test Lab?
No back-end, você pode determinar se o tráfego vem de dispositivos de teste hospedados no Firebase verificando o endereço IP de origem em relação aos nossos intervalos de IP .
O Test Lab funciona com VPC-SC?
O Test Lab não funciona com VPC-SC, que bloqueia a cópia de aplicativos e outros artefatos de teste entre o armazenamento interno do Test Lab e os buckets de resultados dos usuários.
Como faço para detectar testes instáveis no Test Lab?
Para detectar comportamento instável em seus testes, recomendamos usar a opção--num-flaky-test-attempts. As novas execuções do Deflake são cobradas ou contabilizadas em sua cota diária da mesma forma que as execuções normais de teste.
Tenha o seguinte em mente:
Toda a execução do teste é executada novamente quando uma falha é detectada. Não há suporte para repetir apenas casos de teste com falha.
As novas tentativas do Deflake são programadas para execução ao mesmo tempo, mas não há garantia de execução em paralelo, por exemplo, quando o tráfego excede o número de dispositivos disponíveis.
O Test Lab oferece suporte a Appium, Flutter/FlutterDriver, ReactNative/Jest ou Cucumber?
Embora alguns desses itens estejam em nosso roteiro, no momento não podemos nos comprometer a oferecer suporte a essas plataformas de teste e desenvolvimento de aplicativos.
Onde posso encontrar detalhes do dispositivo, como resolução, etc.?
Informações detalhadas do dispositivo estão disponíveis por meio da API e podem ser acessadas no cliente gcloud usando o comando description :
gcloud firebase test ios models describe MODEL
Posso usar fragmentação com testes iOS?
A fragmentação não tem suporte nativo no Test Lab para iOS. No entanto, você pode usar o cliente Flank para fragmentar casos de teste do iOS.
Isso funciona definindo a chave e os valores OnlyTestIdentifiers no arquivo .xctestrun . Consulte a página man de xcodebuild.xctestrun para obter mais detalhes.
Problemas conhecidos
Captchas de login
O teste Robo não pode ignorar telas de login que exigem ações adicionais do usuário além de inserir credenciais para entrar, por exemplo, preencher um CAPTCHA.
Suporte à estrutura de UI
O teste Robo funciona melhor com aplicativos que usam elementos de UI da estrutura de UI do Android (incluindo objetos View , ViewGroup e WebView ). Se você usar o teste Robo para exercitar aplicativos que usam outras estruturas de UI, incluindo aplicativos que usam o mecanismo de jogo Unity, o teste poderá sair sem explorar além da primeira tela.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2024-03-22 UTC."],[],[]]