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 might be updated as needed.
SW Testing Lectures:
- Lecture 1 (13.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 (20.02) - Basic Black-Box Testing Techniques: Boundary Value Analysis & Equivalence Class Partitioning
- Lecture 3 (27.02) - Black-Box Testing (advanced): Cause-Effect Graphing & Combinatorial Testing
- Lecture 4 (05.03) - Basic White-Box Testing Techniques: Instruction & Control-Flow Coverage
- Lecture 5 (12.03) - Black-Box Testing (advanced): State-Transition Testing, Random Testing, Metamorphic Testing
- Lecture 6 (19.03) - Test Levels, Test Tools, Test Automation
- Lecture 7 (26.03) - Black-Box Testing (advanced): Exploratory Testing / Behaviour Testing
- Slides
- Videos:
- Gherkin - a business readable Domain Specific Language (DSL) created for describing the behavior of a system
- 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 (02.04) - Black-Box Testing (advanced): GUI Testing / Visual Testing / Security Testing / Usability Testing / A/B Testing
- Slides
- Videos:
- video-part1-GUIVisualTesting
- video-part2-SecurityUsabilityABTesting - Note: This video is from 2019; subject matter content in slides has not changed; for administrative information look at the 2020 slides
- GUI Testing / Visual Testing Tools:
- GUITAR - A GUI Testing Framework
- Testar for script-less testing
- Link to SikuliX homepage --> To be used in Lab 08
- Sikuli Tutorial
- A good source on A/B Testing: How to build a strong A/B testing plan
- Lecture 9 (09.04) - White-Box Testing (advanced): Data-Flow Testing & Mutation Testing
- Slides
- Videos:
- 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 (16.04) - White-Box Testing (advanced): Symbolic Execution, Static Code Analysis, Document Inspections, Code Review
- Slides
- Videos:
- 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 (23.04) - Quality Estimation / Test Documentation, Organisation and Process Improvement (Test Maturity Model)
- Slides (video) - Note: The slides are from 2020 but the video is from 2019; subject matter content in slides has not changed since 2019; for administrative information about lab/HW11 look at the 2020 slides only!; more information about the exam will be given in Lecture 14 and during my BBB talk at the beginning of Lecture 11 time (recording will be in Moodle as every week).
- 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
- Lecture 12 (30.04) - Industry Guest Lecture 1: Modern Testing Principles by Risko Ruus, Rush Street Interactive Development
- Slides-RiskoRuus (video) -- Note: This is the 2019 Guest Lecture
- 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 (07.05) - Industry Guest Lecture 2: Security Testing of Mobile Applications by Kristiina Rahkema, Nestri Solutions OÜ
- Slides-KristiinaRahkema (video) -- Note: This is the 2019 Guest Lecture
- Kristina's blog post
- Lecture 14 (14.05) - Exam Preparation & Q/A Session