Teste de mutação aplicado a programas concorrentes em MPI - Silva, Rodolfo Adamshuk (2013)
A Programação Concorrente tornou-se uma forma popular de desenvolvimento de software. Este paradigma de desenvolvimento e essencial para construir aplicações com o intuito de reduzir o tempo computacional em muitos domínios como, por exemplo, previsão tempo, processamento de imagem, entre outros. Estes programas têm novas características como a comunicação, a sincronização e o não determinismo, que precisam ser considerados durante a atividade de teste. O teste de software e uma atividade que busca garantir a qualidade por meio da identificação de falhas no produto. O Teste de Mutação e um critério de teste que se baseia nos enganos que podem ser cometidos pelos desenvolvedores de software. Porém, o teste de mutação não pode ser aplicado em programas concorrentes da mesma maneira como e aplicado em programas sequenciais por causa das particularidades presentes nos programas concorrentes. Um problema de aplicar o teste de mutação nesse contexto e o comportamento não determinístico das aplicações. Este trabalho investiga a definição do teste de mutação para programas concorrentes implementados em MPI (Message Passing Interface), os quais realizam comunicação e sincronização por meio de troca de mensagens. Para isso, defeitos típicos nesse domínio foram considerados, buscando modelar operadores de mutação para tratar os aspectos de comunicação e sincronização dessas aplicações. Também foi proposto um procedimento para dar suporte a análise comportamental dos mutantes. As idéias foram implementadas em uma ferramenta de teste chamada ValiMPI Mut