Abstract
Software testing is one of the most effective techniques to ensure software quality, yet in computer science education it remains under-represented and difficult to teach. Students often graduate without the ability to design and evaluate tests effectively, a problem rooted in the cognitive complexity of testing and the lack of established didactic approaches. This gap between education and industry is widely recognised and calls for research into how we can improve teaching software testing.
This skill gap creates a disconnect between academia and industry: graduates struggle with test design, exploratory practices, and critical evaluation of software, all of which are highly valued in practice. Understanding and improving how students use sensemaking during tests is the key to bridge this gap.
The ultimate solution would be an educational ecosystem where software testing is no longer a separate, neglected topic but a natural and integrated part of computer science learning from the very beginning. In this vision, students do not see testing as extra work or an afterthought, but as a core activity of programming and software engineering. Instead of approaching testing with a purely rationalist, code-driven mindset, they learn to balance rationalism with empiricism: treating tests as small scientific experiments in which hypotheses are formulated, explored, and evaluated against evidence. Such a solution would combine several complementary elements. Programming education would routinely use approaches like Test Informed Learning with Examples (TILE), where testing is embedded into every exercise and example. Students would participate in puzzle-based learning activities that build their skills in questioning, modelling, experimenting, and communicating about tests. Serious games would provide immersive, hands-on opportunities to practice exploratory testing strategies, scaffolded by testing tours and Socratic questioning, helping them experience the reflective and investigative side of the discipline.
Ultimately, this integrated framework would form better software engineers and testing professionals: graduates who can critically evaluate, guide, and improve software quality even in a future where machine code is increasingly generated by AI. They would not only be technically skilled, but also capable of making sense of complex systems, adapting to uncertainty, and applying critical thinking to software behaviour.
This thesis addresses the problem by investigating sensemaking in software testing and exploring how empiricism, exploration, and reflection-in-action can be better supported in education. Through a systematic literature review and a series of empirical studies and design-based research interventions, the work develops new ways of embedding testing into current curricula. A systematic literature review (SLR) maps the state of the art in software testing education from 2019 to 2026, identifying emerging pedagogical approaches, assessment strategies, and the influence of AI on teaching and learning practices. TILE shows how testing can be introduced seamlessly and subtly in programming courses. Puzzle-based learning is used to engage students in questioning assumptions, modelling, experimenting, and communicating about tests. A serious game design demonstrates how exploratory testing can be scaffolded with testing tours and Socratic questioning to foster reflective practice.
This thesis integrates a series of empirical investigations, design-based research interventions, and conceptual frameworks. Each contribution is anchored in a published or submitted study, collectively articulating a coherent narrative on how to improve testing education through sensemaking and empiricism. Collectively, these studies contribute to an expanding corpus of knowledge that transitions the pedagogy of testing from a rationalist, code-centric paradigm toward an empiricist approach, founded on experimentation and evidence.
The thesis concludes by outlining future work on expanding serious games and puzzle collections, further refining pedagogical interventions, and continuing to bridge the persistent gap between academic teaching and the demands of professional software testing practice.
This skill gap creates a disconnect between academia and industry: graduates struggle with test design, exploratory practices, and critical evaluation of software, all of which are highly valued in practice. Understanding and improving how students use sensemaking during tests is the key to bridge this gap.
The ultimate solution would be an educational ecosystem where software testing is no longer a separate, neglected topic but a natural and integrated part of computer science learning from the very beginning. In this vision, students do not see testing as extra work or an afterthought, but as a core activity of programming and software engineering. Instead of approaching testing with a purely rationalist, code-driven mindset, they learn to balance rationalism with empiricism: treating tests as small scientific experiments in which hypotheses are formulated, explored, and evaluated against evidence. Such a solution would combine several complementary elements. Programming education would routinely use approaches like Test Informed Learning with Examples (TILE), where testing is embedded into every exercise and example. Students would participate in puzzle-based learning activities that build their skills in questioning, modelling, experimenting, and communicating about tests. Serious games would provide immersive, hands-on opportunities to practice exploratory testing strategies, scaffolded by testing tours and Socratic questioning, helping them experience the reflective and investigative side of the discipline.
Ultimately, this integrated framework would form better software engineers and testing professionals: graduates who can critically evaluate, guide, and improve software quality even in a future where machine code is increasingly generated by AI. They would not only be technically skilled, but also capable of making sense of complex systems, adapting to uncertainty, and applying critical thinking to software behaviour.
This thesis addresses the problem by investigating sensemaking in software testing and exploring how empiricism, exploration, and reflection-in-action can be better supported in education. Through a systematic literature review and a series of empirical studies and design-based research interventions, the work develops new ways of embedding testing into current curricula. A systematic literature review (SLR) maps the state of the art in software testing education from 2019 to 2026, identifying emerging pedagogical approaches, assessment strategies, and the influence of AI on teaching and learning practices. TILE shows how testing can be introduced seamlessly and subtly in programming courses. Puzzle-based learning is used to engage students in questioning assumptions, modelling, experimenting, and communicating about tests. A serious game design demonstrates how exploratory testing can be scaffolded with testing tours and Socratic questioning to foster reflective practice.
This thesis integrates a series of empirical investigations, design-based research interventions, and conceptual frameworks. Each contribution is anchored in a published or submitted study, collectively articulating a coherent narrative on how to improve testing education through sensemaking and empiricism. Collectively, these studies contribute to an expanding corpus of knowledge that transitions the pedagogy of testing from a rationalist, code-centric paradigm toward an empiricist approach, founded on experimentation and evidence.
The thesis concludes by outlining future work on expanding serious games and puzzle collections, further refining pedagogical interventions, and continuing to bridge the persistent gap between academic teaching and the demands of professional software testing practice.
| Original language | English |
|---|---|
| Qualification | PhD |
| Awarding Institution |
|
| Supervisors/Advisors |
|
| Award date | 13 Nov 2026 |
| Publisher | |
| Publication status | Published - 13 Nov 2026 |
Fingerprint
Dive into the research topics of 'O bug, where art thou? Improving software testing education'. Together they form a unique fingerprint.Cite this
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver