Coloque em quarentena primeiro, para que a suíte volte a ser confiável, e depois corrija as causas raiz em vez de disfarçá-las com retries. As causas usuais são timing e sincronização (sleeps fixos, race conditions), dados de teste compartilhados ou deixados para trás, dependência de ordem de execução e ambientes instáveis. Corrija esperando por condições em vez de durações, isolando dados por teste e deixando cada teste independente da ordem de execução.
Por que os entrevistadores perguntam isso
Instabilidade é a forma mais rápida de uma suíte perder autoridade, então entrevistadores querem ver que você trata isso como defeito e não como ruído de fundo. A resposta que eles querem separa a quarentena, que é paliativa, do trabalho de causa raiz, e nomeia causas concretas. Quem diz que é só colocar um retry está avisando ao entrevistador que vai deixar bugs reais passarem alegremente.
Como estruturar sua resposta
- Diga que um teste instável é um defeito, não ruído.
- Coloque em quarentena para restaurar a confiança, mas trate isso como algo temporário.
- Nomeie as causas raiz comuns em categorias.
- Descreva as correções, especialmente esperar por condições e não por durações.
- Mencione acompanhar a taxa de instabilidade como métrica.
Exemplo de resposta
A primeira coisa que eu faço é estancar o sangramento, porque uma suíte que falha aleatoriamente passa a ser ignorada, e quando as pessoas a ignoram você não tem rede de segurança nenhuma. Então testes instáveis vão para quarentena, numa execução separada que não bloqueia o pipeline, com um ticket e um responsável, não deletados e não silenciosamente re-executados para sempre. Depois eu de fato diagnostico. O maior balde de longe é sincronização: alguém usou um sleep fixo, ou fez a asserção logo depois de um clique enquanto a requisição ainda estava no ar. A correção é esperar por uma condição, tipo o elemento ficar clicável ou a chamada de rede resolver, nunca por uma duração. O segundo balde são dados: dois testes usando a mesma conta, ou um teste assumindo um estado vazio que a execução anterior sujou. Eu corrijo criando dados por teste com um identificador único. O terceiro é dependência de ordem, que eu faço aparecer rodando a suíte deliberadamente em ordem aleatória. E eu acompanho a taxa de instabilidade num dashboard, porque se não for medida ela volta se arrastando. Qualquer coisa acima de mais ou menos um por cento eu trato como problema de verdade.
Vai encarar essa entrevista em breve? O GhostPilot escuta a sua chamada ao vivo, identifica a pergunta no instante em que ela é feita e coloca uma resposta estruturada na sua tela em tempo real. Teste na sua próxima entrevista simulada ou pegue um Session Pass de $29, sem assinatura, para a hora da verdade.
Veja como funcionaPerguntas de acompanhamento que você pode esperar
- Quando um retry é de fato aceitável?
- Como você encontraria um teste que só falha quando roda depois de outro?
- O que você faria se a instabilidade viesse de um ambiente genuinamente instável?
Mais perguntas para Engenheiro de QA
Seu entrevistador vai fazer a própria versão desta. Cole a descrição real da vaga no Question Predictor gratuito e receba as 20 perguntas que essa vaga tem mais chance de fazer, com o que cada uma está de fato sondando.
Prever minhas perguntas