Resumo
Considerando a relevância da automatização das atividades de teste para a indústria de produção de software e a relevância do teste baseado em mutação a partir de evidências científicas, neste projeto tem-se por objetivo definir um processo de teste baseado em mutação que possa ser executado de forma 100% automatizado por meio de um ambiente de teste de apoio, ambiente este que será especificado, implementado e validado com aplicações industriais e open-source. Métodos: Investigar e automatizar três problemas clássicos do teste de mutação: 1) geração de mutantes; 2)execução dos mutantes; e a 3) análise dos mutantes vivos e equivalentes no processo de teste. Na geração, pretende-se utilizar análise estática e informações de fluxo de controle e de dados para selecionar os pontos em que as mutações serão realizadas, além de selecionar tipos específicos de operadores a serem utilizados em função das características do produto em teste. Na execução dos mutantes, é importante que seja feita uma seleção de bons casos de teste com alta probabilidade de matar mutantes não equivalentes. Para isso, entende-se que devem ser combinados diferentes geradores automáticos de dados de teste e, possivelmente, desenvolvidos novos algoritmos de geração para matar mutantes gerados por operadores de mutação específicos. Na análise dos mutantes vivos e equivalentes serão definidas e avaliadas estratégias, de forma automatizada, para a determinação de mutantes equivalentes, utilizando-se heurísticas, aprendizado Bayesiano, e a frequência de execução dos mutantes pelos casos de teste. Resultados esperados: serão gerados um processo de teste e um ambiente de apoio gratuito, além de dados de experimentação que permitirão a geração de benchmarks de teste para C, Java e Python, viabilizando o desenvolvimento de novas pesquisas relacionadas ao teste de mutação, principalmente no contexto dessas linguagens de programação. Processo e Ambiente serão aplicados e avaliados em parceiros industriais os quais manifestaram apoio e interesse no uso do processo resultante deste projeto de pesquisa. Débito técnico no contexto desta proposta caracteriza os riscos associados à produção e à liberação de produtos de software, tendo como base o critério deteste baseado em mutação. Conclusões: Pretende-se viabilizar a aplicação do teste de mutação como um importante mecanismo de garantia da qualidade de produtos de software de forma totalmente automatizada, favorecendo a transferência tecnológica e aplicação do teste de mutação para a indústria, com a consequente evolução da capacidade de produção de software da indústria brasileira. (AU)
| Matéria(s) publicada(s) na Agência FAPESP sobre o auxílio: |
| Mais itensMenos itens |
| TITULO |
| Matéria(s) publicada(s) em Outras Mídias ( ): |
| Mais itensMenos itens |
| VEICULO: TITULO (DATA) |
| VEICULO: TITULO (DATA) |