Here you find the lecture slides and any other materials handed out during a lecture or related to a lecture and associated lab sessions.
Disclaimer: The following schedule might be updated as needed.
SW Testing Lectures:
- Lecture 1 (14.02) - Introduction to Software Testing
- Slides (video)
- Link to an introductory tutorial on testing: Guru99
- Link to an introductory survey of testing concepts: SoftwareTestingFundamentals
- Lecture 2 (21.02) - Basic Black-Box Testing Techniques: Boundary Value Analysis & Equivalence Class Partitioning
- Lecture 3 (28.02) - Black-Box Testing (advanced): Combinatorial Testing
- Lecture 4 (07.03) - Basic White-Box Testing Techniques: Control-Flow Coverage
- Lecture 5 (14.03) - Test Lifecycle, Test Tools, Test Automation
- Lecture 6 (21.03) - Test Levels / BDD & Behavior Testing / GUI Testing / Visual Testing
- Slides (video)
- Gherkin - a business readable Domain Specific Language (DSL) created for describing the behavior of a system
- Tool Examples:
- Unit Testing Tool JUnit
- Mocking Tool Mockito
- Mockito API
- Cucumber for Behavior Testing mit Gherkin
- GUITAR - A GUI Testing Framework
- Testar for script-less testing --> To be used in Lab 08
- Visual testing with Sikuli / SikuliX
- Sikuli Tutorial -- this might be outdated
- Lecture 7 (28.03) - Black-Box Testing (advanced): State-Transition Testing & Exploratory Testing
- Slides (video)
- Recap of Behavior Testing (-> Lab 07):
- Gherkin --> to be used in Lab 07
- Cucumber for Behavior Testing mit Gherkin --> in Lab 07 Behave will be used instead of Cucumber
- Exploratory Testing Tools:
- List of ET tools
- Test Gap Analysis with Teamscale (YouTube video 14:21 min)
- Lecture 8 (04.04) - Black-Box Testing (advanced): Security Testing, Usability Testing and A/B Testing
- Slides (video)
- Testar for script-less testing --> To be used in Lab 08
- A good source on A/B Testing: How to build a strong A/B testing plan
- Lecture 9 (11.04) - White-Box Testing (advanced): Data-Flow Testing & Mutation Testing
- Slides (video) -- due to a problem with the sound recording, no audio is available / you may look at last year's course lecture 4 (link) for a shortened version
- 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
- Lecture 10 (18.04) - White-Box Testing (advanced): Symbolic Execution, Static Code Analysis, Document Inspections, Code Review
- Slides (video) -- due to a problem with the sound recording, no audio is available / you may look at last year's course lecture 6 (link) for a shortened version
- Readings/Materials:
- Two papers on document inspections & reviews:
- Tool Examples:
- Symbolic PathFinder tool by NASA: Symbolic PathFinder web-page
- Static code analysis tool FindBugs: FindBugs web-page
- Code review support tool Gerrit (works with Git): Gerrit Tutorial
- Lecture 11 (25.04) - Quality Estimation / Test Documentation, Organisation and Process Improvement (Test Maturity Model)
- Slides (video)
- Readings/Materials:
- 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
- Open lecture by James Bach on the nature of software testing and what makes a good software tester (link)
- TMMi Framework
- 02.05 - no lecture
- Lecture 12 (09.05) - Industry Guest Lecture 1: Modern Testing Principles by Risko Ruus, Rush Street Interactive Development
- Slides-intro / Slides-lecture (video)
- Short bio of Risko Ruus: Risko has experience in testing software for large corporations including Nokia, Playtech and Microsoft since 2006. In 2014 he took the challenge of building up the quality culture from ground up in a small start-up company which has now grown from 3 people to ten times the initial size. He likes to participate in local tester’s meetups and has experience in speaking at testing conferences and teaching students about test automation at the “Hands-on Software Testing” course.
- Lecture 13 (16.05) - Industry Guest Lecture 2: Security Testing of Mobile Applications by Kristiina Rahkema, Nestri Solutions OÜ (60 min) / Exam Preparation (30 min)