Alternativa A - Um mutante indistinguível do programa original pelos testes
Conceito de Teste de Mutação
O teste de mutação é uma técnica de avaliação da qualidade dos casos de teste. Ela funciona criando pequenas alterações artificiais (mutações) no código-fonte para gerar versões modificadas chamadas programas mutantes.
O objetivo principal é verificar se a suíte de testes existente consegue identificar essas alterações.
Definição de Mutante Vivo
Um mutante vivo ocorre quando o programa modificado passa por todos os testes sem gerar falhas.
Isso significa que:
- Os testes não conseguiram detectar a diferença entre o comportamento do mutante e o do programa original.
- O mutante é indistinguível do original dentro do escopo dos testes aplicados.
- Indica uma possível lacuna na cobertura ou qualidade dos testes para aquele trecho específico do código.
Análise das Alternativas
| Opção | Status | Justificativa |
|---|
| A | Correta | Descreve exatamente a definição de um mutante vivo (não foi "morto" pelos testes). |
| B | Incorreta | Refere-se a erros de compilação, não ao comportamento durante o teste de mutação. |
| C | Incorreta | Não confirma defeito no original; apenas mostra que o teste não pegou a mudança artificial. |
| D | Incorreta | Descreve um mutante que falhou (foi "morto"), o oposto de um mutante vivo. |
Conclusão
Portanto, a alternativa correta é a A, pois um mutante vivo é aquele que sobreviveu à execução dos testes, permanecendo funcionalmente idêntico ao original sob a perspectiva desses testes.