All lectures will be delivered online (BBB link in Moodle).
Practice sessions will be conducted physically in the classroom (no video recording).
Here you find the lecture slides and any other materials handed out during a lecture or related to a lecture and associated lab sessions. The detailed lab instructions can be found under the tab Labs .
Disclaimer: The following schedule is still subject to content changes.
SW Testing Lectures:
- Lecture 0 (13.02) - Introduction to Software Testing
- This lecture is related to Quiz 0
- Slides-L0-2024 / 2025 video in Moodle (BBB)
- Older videos from previous years (subject matter content similar to 2024):
- Link to an introductory tutorial on testing: Guru99
- The "Heartbleed Bug" explained: (link) - Think about a test case that would have found this bug!
- A recent book on debugging by Andreas Zeller: (link)
- Lecture 1 (20.02) - Debugging & Basic Black-Box Testing Techniques: Equivalence Class Partitioning (Part 1)
- This lecture is related to Quizzes 1 & 2 and HWs 1 & 2
- Slides-L1-2024 / 2025 video in Moodle (BBB)
- Older videos from previous years (content similar to 2024):
- Lecture 2 (27.02) - Basic Black-Box Testing Techniques: Equivalence Class Partitioning (Part 2) & Boundary Value Analysis
- This lecture is related to Quiz 2 and HW 2
- Slides-L2-2024 / 2025 video in Moodle (BBB)
- Older videos from previous years (content similar to 2023):
- Lecture 3 (06.03) - Black-Box Testing (advanced): Cause-Effect Graphing & Combinatorial Testing
- This lecture is related to Quiz 3 and HW 3
- Slides-L3-2024 / 2025 video in Moodle (BBB)
- Older videos from previous years (content similar to 2024):
- Two papers and one NIST report on combinatorial testing:
- Lecture 4 (13.03) - Basic White-Box Testing Techniques: Statement & Control-Flow Coverage
- This lecture is related to Quiz 4 and HW 4
- Slides-L4-2024 / 2025 video in Moodle (BBB)
- Older videos from previous years (content similar to 2024):
- Code Coverage tools:
- Lecture 5 (20.03) - Black-Box Testing (advanced): State-Transition Testing, Random Testing, GUI Testing / Visual Testing
- This lecture is related to Quiz 5 and HW 5
- Slides-L5-2024 / 2025 video in Moodle (BBB)
- Older videos from previous years (content similar to 2024):
- Video-L5-2024 -- Unfortunately, the video doesn't have audio although I had switched on the mic.
- Video-L5-2023 (full lecture)
- Random Testing Tools:
- Further readings:
- Random Testing (Wikipedia)
- EvoSuite paper
- Fuzzing (Wikipedia)
- Fuzzing (online textbook by Andreas Zeller, Rahul Gopinath, Marcel Böhme, Gordon Fraser, and Christian Holler)
- GUI Testing / Visual Testing Tools:
- Lecture 6 (27.03) - Test Levels, Test Tools, Test Automation
- This lecture is related to Quiz 6 and HW 6
- Slides-L6-2024 / 2025 video in Moodle (BBB)
- Older videos from previous years (content similar to 2024):
- Lists of QA/Test Tools:
- Tool Examples:
- Lecture 7 (03.04) - Black-Box Testing (advanced): Metamorphic Testing / Security Testing / Usability Testing / A/B Testing
- This lecture is related to Quiz 7 and HW 7
- Slides-L7-2024 / 2025 video in Moodle (BBB)
- Older videos from previous years (content similar to 2024):
- Video-L7-2024 -- Unfortunatly, once again, it seems that there is no audio; please look at the last year's videos, if you missed the lecture in the classroom.
- Video-L7-2023 (full lecture)
- A good source on A/B Testing: How to build a strong A/B testing plan
- Lecture 8 (10.04) - Security Testing of Mobile Applications (by Kristiina Rahkema)
- This lecture is related to HW 8 (no Quiz this week)
- Slides-L8-2024 / 2025 video in Moodle (BBB)
- Older videos from previous years (content similar to 2024):
- Kristina's blog post
- Lecture 9 (17.04) - White-Box Testing (advanced): Data-Flow Testing & Mutation Testing
- This lecture is related to Quiz 8 and HW 9
- Slides-L9-2024 / 2025 video in Moodle (BBB)
- Older videos from previous years (content similar to 2024):
- Readings/Materials:
- Paper on the effectiveness of code coverage criteria:
- Paper by Hemmati, H.: "How Effective Are Code Coverage Criteria?", in Proc. of the International Conference on Software Quality, Reliability and Security (QRS 2015), IEEE, p. 151-156
- Two papers listing mutation operators for Java:
- Paper on the effectiveness of code coverage criteria:
- Tools:
- Mutation testing tool PIT: pitest.org
- YouTube videos on mutation testing:
- Lecture 10 (24.04) - White-Box Testing (advanced): Symbolic Execution, Static Code Analysis, Document Inspections, Code Review
- This lecture is related to Quiz 9 and HW 10 & HW 11
- Slides-L10-2024 / 2025 video in Moodle (BBB)
- Older videos from previous years (content similar to 2024):
- Readings/Materials:
- Two papers on document inspections & reviews:
- White paper on the importance of requirements and their impact on project success (2022): https://www.fortiss.org/fileadmin/user_upload/06_Ergebnisse/Whitepaper/fortiss-requirements-engineering-whitpaper-web.pdf
- Tool Examples:
- Static code analysis tool SpotBugs: https://spotbugs.github.io (a fork from FindBugs)
- Static code analysis tool FindBugs: FindBugs web-page (which is now an abandoned project)
- Static code analysis tool PMD: PMD web-page
- Symbolic PathFinder tool by NASA: Symbolic PathFinder on GitHub
- Code review support tool Gerrit (works with Git): Gerrit Tutorial
- Survey conducted by JetBrains about code review tools: JetBrains Survey Results
- No lecture on May 1 (holiday)
- Lecture 11 (08.05) - Quality Estimation / Test Documentation, Organisation and Process Improvement (Test Maturity Model)
- This lecture is related to Quiz 10 and HW 11
- Slides-L11-2024 / 2025 video in Moodle (BBB)
- Older videos from previous years (content similar to 2024):
- Readings/Materials/Videos:
- Two papers on the question "What makes a good bug report?":
- Test incident report (IEEE 829-1998):
- Book Chapter by Kit: Organisational approaches to testing
- Industry Guest Lecture by James Bach on the nature of software testing and what makes a good software tester (link)
- Industry Guest Lecture by Almer Mermer on process and people aspects of agile testing (link)
- TMMi Framework
- Lecture 12 (15.05) - Black-Box Testing (advanced): Exploratory Testing / Behaviour Testing / Exam Preparation
- This lecture is related to Quiz 11 - NB: There is no related HW due to Exam 1
- Slides-L12a-2024 / 2025 video in Moodle (BBB)
- Slides-L12b-2024 / 2025 video in Moodle (BBB)
- Older videos from previous years (content very similar to 2024):
- Gherkin - a business readable Domain Specific Language (DSL) created for describing the behavior of a system
- Cucumber for Behavior Testing with Gherkin
- Exploratory Testing Tools:
- List of ET tools
- Test Gap Analysis with Teamscale (YouTube video 14:21 min)