Uma abordagem para o ensino de teste estrutural baseada na integração dos testes caminho básico, todos-usos e análise de mutantes
Resumo
Este trabalho apresenta uma nova abordagem da aplicação de teste estrutural de software, na integração de três técnicas para emprego no processo ensino-aprendizagem e no objetivo de mostrar ao discente uma forma de reduzir a quantidade de mutantes de programa e seu processo de geração. Para tanto, foi utilizado um algoritmo exemplo e aplicado um roteiro de utilização das técnicas abordadas, comparando-se o resultado com uma métrica encontrada na literatura. A abordagem mostrou uma redução significativa de 288 mutantes pelo método tradicional para 112 mutantes pelo método apresentado, sem perda aparente de fluxos para medição e com aceitação no processo ensino-aprendizagem.
Referências
Barbosa, E. F., Maldonado, J. C., Vincenzi, A. M. R. e Delamaro, M. (2005). “Teste estrutural e de mutação no contexto de programas OO”. In: IV Escola Regional de Informática de Minas Gerais (ERI-MG 2005), texto didático. Belo Horizonte, MG.
Beizer, Boris (2003). Software testing techniques. Dreamtech Press.
Delamaro, M., Jino, M. e Maldonado, J. C. (2017). Introdução ao teste de software. Elsevier Brasil, 2ª. edição.
Frankl, Phyllis G. (1987). “Use of data-flow information for the selection and evaluation of software test data”. Doctoral Dissertation, New York University, NY, USA.
Frankl, P. G. and Weyuker, Elaine. J. (1988). “An Applicable Family of Data Flow Testing Criteria”, Journal IEEE Transactions on Software Engineering, Volume 14 Issue 10, USA, p. 1483-1498.
Hecht, Matthew S. (1977). Flow Analysis of Computer Programs Elsevier Science Inc. New York, NY, USA.
Howden, William E. (1976). "Reliability of the path analysis testing strategy." IEEE Transactions on Software Engineering 3, p. 208-215.
Maldonado, J. C. (1991). “Critérios potenciais usos: Uma contribuição ao teste estrutural de software”. Tese Doutorado, DCA/FEE/UNICAMP, Campinas-SP.
McCabe, Thomas J. (1976). "A complexity measure." IEEE Transactions on software Engineering 4, p. 308-320.
Pressman, R. e Maxim, B. (2016). Engenharia de Software, McGraw Hill Brasil, 8ª Edição.
Rapps, Sandra and Weyuker, Elaine J. (1985). “Selecting software test data using data flow information”. IEEE transactions on software engineering 4, p. 367-375.
Rocha, A. R. C. D., Maldonado, J. C. e Weber, K. C. (2001). Qualidade de software: teoria e prática. Prenttice Hall.
Vincenzi, A., Delamaro, M., Höhn, E., and Maldonado, J. C. (2007). “Functional, control and data flow, and mutation testing: Theory and practice”. In: Pernambuco Summer School on Software Engineering, p. 18-58. Springer, Berlin, Heidelberg.
Wong, W. E., Mathur, A. P. and Maldonado, J. C. (1995). “Mutation versus all-uses: An empirical evaluation of cost, strength and effectiveness”. In: Software Quality and Productivity, p. 258-265. Springer, Boston-MA, USA.