Definição e Avaliação de uma Abordagem Gamificada para o Ensino de Teste de Software - Nascimento, Eduardo Henrique; Coelho, Roberta; Madeira, Charles; Medeiros, Kláudio; Silva, Lucas; Oliveira Neto, Carlos (Anais do Simpósio Brasileiro de Engenharia de Software (SBES); 2024: Anais do XXXVIII Simpósio Brasileiro de Engenharia de Software, 2024)
Testing is one of the most adopted practices in the software industry to reveal failures early in the development process and thus improve the quality of software in production. Despite their relevance, activities related to software testing are usually not taught and practiced enough in undergrad courses, and they are commonly considered demotivating. In this scenario, gamification has been a widely used approach, consisting of using common game elements in non-game contexts, which can make teaching activities and software testing practices more interesting. Therefore, the present work discusses how gamification was applied to support the Software Testing Discipline offered to undergraduate courses on Software Engineering, Computer Science, and Information Technology. A case study was conducted to evaluate the effects of the proposed gamified approach on students’ motivation and learning. In this study, the students had to create JUnit test cases applying domain partitioning criteria using both traditional and gamified approaches. We used Latin Square to perform the study. The results obtained from quantitative and qualitative analyses indicate that (i) there was no significant difference in test coverage when comparing both approaches, (ii) the gamified approach led to higher mutation scores, (iii) and gamification contributed positively to student motivation.