Teste de mutação
O que é teste de mutação?
O teste de mutação é uma técnica de teste estrutural, que usa a estrutura do código para guiar o processo de teste. Em um nível muito alto, é o processo de reescrever o código-fonte em pequenas formas, a fim de remover as redundâncias no código-fonte
Essas ambigüidades podem causar falhas no software se não forem corrigidas e podem facilmente passar pela fase de teste sem serem detectadas.
Benefícios do teste de mutação:
Os seguintes benefícios são experimentados, se o teste de mutação for adotado:
Ele traz um novo tipo de erro à atenção do desenvolvedor.
É o método mais poderoso para detectar defeitos ocultos, que podem ser impossíveis de identificar usando as técnicas de teste convencionais.
Ferramentas como Insure ++ nos ajudam a encontrar defeitos no código usando o estado da arte.
Aumento do índice de satisfação do cliente, pois o produto apresentaria menos erros.
Depurar e manter o produto seria mais fácil do que nunca.
Tipos de teste de mutação:
Value Mutations:Uma tentativa de alterar os valores para detectar erros nos programas. Normalmente alteramos um valor para um valor muito maior ou um valor para um valor muito menor. A estratégia mais comum é alterar as constantes.
Decision Mutations:As decisões / condições são alteradas para verificar os erros de projeto. Normalmente, alteramos os operadores aritméticos para localizar os defeitos e também podemos considerar a mutação de todos os operadores relacionais e lógicos (AND, OR, NOT)
Statement Mutations: Alterações feitas nas instruções excluindo ou duplicando a linha que pode surgir quando um desenvolvedor está copiando e colando o código de outro lugar.