Skip to content
Latchkey

O Que É um Teste em Quarentena? Explicação

Um teste em quarentena é um teste sabidamente flaky deliberadamente retirado do caminho que bloqueia o build, para que seu ruído não derrube builds enquanto uma correção real está pendente.

Quando um teste é flaky, deixá-lo no caminho bloqueante treina o time a ignorar builds vermelhos, o que é perigoso. Apagá-lo perde cobertura. A quarentena é o caminho do meio: continuar rodando o teste para obter sinal, mas impedi-lo de bloquear merges até que seja corrigido.

O que a quarentena faz

Colocar em quarentena marca um teste como sabidamente flaky e exclui seu resultado do gate de aprovação/reprovação. O teste geralmente ainda roda, então você mantém visibilidade sobre se ele está passando, mas uma falha não deixa mais o build vermelho nem bloqueia um merge.

Por que os times a usam

Um único teste flaky que falha uma execução em vinte pode bloquear dezenas de merges por semana e corroer a confiança na CI. A quarentena restaura imediatamente um gate verde e confiável, ao mesmo tempo que preserva a cobertura para que o teste flaky não seja simplesmente esquecido ou apagado.

O risco e a disciplina

A quarentena é uma cela, não um cemitério. O perigo é que testes em quarentena se acumulem e percam cobertura silenciosamente para sempre. Times saudáveis rastreiam a lista de quarentena, estabelecem a expectativa de que os testes sejam corrigidos e devolvidos, e alertam quando a lista cresce.

Quarentena vs retry

O retry reexecuta um teste que falha na esperança de que ele passe; a quarentena o impede de bloquear por completo. Eles resolvem problemas diferentes: retries encobrem ruído transitório e de tempo por execução, enquanto a quarentena lida com um teste persistentemente flaky que precisa de uma correção real antes de poder ser confiável de novo.

A perspectiva da Latchkey

A quarentena mira testes flaky (bugs de teste); a autocorreção da Latchkey mira falhas transitórias e mecânicas de infraestrutura. Elas são complementares: ao fazer retry automático de instabilidades genuínas de infraestrutura, a Latchkey mantém sua lista de quarentena focada em testes que são de fato flaky, em vez de testes falhando por ruído ambiental.

Principais conclusões

  • Um teste em quarentena ainda roda, mas não bloqueia mais o build.
  • A quarentena restaura um gate confiável sem apagar cobertura.
  • Ela precisa ser uma cela temporária, rastreada e reduzida ao longo do tempo.
  • A quarentena lida com testes flaky; retries lidam com ruído transitório por execução.

Guias relacionados