Critérios para geração de casos de teste baseados em modelo descritos em PcML

  • Beatriz Aruk da Silva Universidade Federal de Santa Catarina (UFSC)
  • Lucas Tosetto Teixeira Universidade Federal de Santa Catarina (UFSC)
  • Gian Ricardo Berkenbrock Universidade Federal de Santa Catarina (UFSC)

Resumo


Uma das principais etapas durante o desenvolvimento de um software é o teste e verificação das funcionalidades implementadas. Testar um software pode ser uma tarefa que demande grande esforço e mesmo assim não garante que um erro seja detectado. A automatização da geração de testes surge como uma abordagem que auxilia a verificação e validação de softwares. Atualmente existem diferentes modelos de critérios para geração de casos de testes, com base em maquinas de estados finitos (MEF), que dão suporte durante a etapa de testes de software. Cada modelo pode percorrer a máquina de estados finitos de uma maneira, entregando diferentes casos de testes. Este estudo pretende comparar três diferentes critérios de testes, sendo eles Switch Cover, Unique Input/Output (UIO) e Distinguishing Sequence (DS), para quatro MEF e avaliar a resposta de cada um, analisando seu custo nos casos de testes gerados.

Referências

Apfelbaum, L. and Doyle, J. (1997). Model based testing

Dalal, S., Jain, A., Karunanithi, N., Leaton, J., and Lott, C. (1999). Model-based testing in practice. Proceedings - International Conference on Software Engineering.

De Bruijn, N. G. (1946). A combinatorial problem. In Proc. Koninklijke Nederlandse Academie van Wetenschappen, volume 49, pages 758–764.

Fantinato, M. (2002). Teste de software baseado em maquinas de estados finitos.

Floyd, L. T. (2015). Digital fundamentals. Global, Inglaterra, 11 edition.

Gonenc, G. (1970a). A method for the design of fault detection experiments. IEEE Transactions on Computers, C-19(6):551–558.

Gonenc, G. (1970b). A method for the design of fault detection experiments. IEEE Transactions on Computers, C-19(6):551–558.

Harel, D. (1987). Statecharts: a visual formalism for complex systems. Science of Computer Programming, 8(3):231–274.

Hierons, R. M. and Cengiz Türker, U. (2015). Incomplete distinguishing sequences for finite state machines. The Computer Journal, 58(11):3089–3113.

Hopcroft, John E.; Motwani, R. and Ullman, J. D. (2006). Introduction to automata theory, languages, and computation. Pearson, Estados Unidos da America.

Jino, M., Maldonado, J. C., and Delamaro, M. E. (2007). Introdução ao teste de software. Elsevier - Campus, Brasil.

Lee, D. and Yannakakis, M. (1996). Principles and methods of testing finite state machines-a survey. Proceedings of the IEEE, 84(8):1090–1123.

Levi, F. (2001). Compositional verification of quantitative properties of statecharts. Journal of Logic and Computation, 11(6):829–878.

Myers, G. J., Sandler, C., Badgett, T., and Thomas, T. M. (2004). The art of software testing. John Wiley Sons, 2nd ed edition.

Pimont, S. and Rault, J.-C. (1976). A software reliability assessment based on a structural and behavioral analysis of programs. In Proceedings of the 2nd International Conference on Software Engineering, ICSE ’76, page 486–491, Washington, DC, USA. IEEE Computer Society Press.

Porto, F. R. (2013). Estrategia para geração de sequencias de verificação para máquinas de estados finitos.

Rosen, K. (2009). Matematica Discreta e suas Aplicações. Grupo A Educação.

Sabnani, K. and Dahbura, A. (1988). A protocol test generation procedure. Computer Networks and ISDN Systems, 15(4):285–297.

Santiago, V., Martins Do Amaral, A. S., Vijaykumar, N. L., Fatima Mattiello-francisco, M. D., Martins, E., and Lopes, O. C. (2006). A practical approach for automated test case generation using statecharts. In 30th Annual International Computer Software and Applications Conference (COMPSAC’06), volume 2, pages 183–188.

Seshu, S. (1963). Introduction to the theory of finite-state machines. Proceedings of the IEEE, 51(9):1275–1275.

Souza, E., Santiago Junior, V., and Vijaykumar, N. (2017). H-switch cover: a new test criterion to generate test case from finite state machines. Software Quality Journal, 25:373–405.

Vieira, N. J. (2006). Introdução aos fundamentos da computação: linguagens e máquinas. Cengage Learning, Brasil.

Zhu, H., Hall, P., and May, J. (1997). Software unit test coverage and adequacy. ACM Computing Surveys - CSUR, 29(4).
Publicado
06/12/2023
DA SILVA, Beatriz Aruk; TEIXEIRA, Lucas Tosetto; BERKENBROCK, Gian Ricardo. Critérios para geração de casos de teste baseados em modelo descritos em PcML. In: ESCOLA REGIONAL DE ENGENHARIA DE SOFTWARE (ERES), 7. , 2023, Maringá/PR. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2023 . p. 11-20. DOI: https://doi.org/10.5753/eres.2023.237339.