Institute of Computer Science
  1. Courses
  2. 2018/19 spring
  3. Software Testing (LTAT.05.006)
ET
Log in

Software Testing 2018/19 spring

  • General Information
  • Lectures
  • Labs
    • Submission
  • Quizzes
  • Readings
  • Message Board (Slack)
  • Assessment and Grades
  • Links

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
    • Slides (video)
  • Lecture 3 (28.02) - Black-Box Testing (advanced): Combinatorial Testing
    • Slides (video)
    • Two papers and one NIST report on combinatorial testing:
      • Paper1
      • Paper2
      • NIST Report
  • Lecture 4 (07.03) - Basic White-Box Testing Techniques: Control-Flow Coverage
    • Slides (video)
  • Lecture 5 (14.03) - Test Lifecycle, Test Tools, Test Automation
    • Slides (video)
    • Lists of QA/Test Tools:
      • Software QA Testing and Test Tool Resources
      • Web Site Test Tools and Site Management Tools (>500 tools listed)
      • Another list of QA tools
    • Tool Examples:
      • Information on Selenium
        • Basic introductory video on Selenium IDE (10:07 min)
        • Introductory video on Selenium IDE (18:30 min)
      • Model-Based Testing (MBT) Tool GraphWalker
  • 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 1: Description of Class Mutation Mutation Operators for Java
        • Paper 2: Description of Method Mutation Mutation Operators for Java
    • 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:
        • Paper 1 by Runeson, P.; Andersson, C.; Thelin, T.; Andrews, A.; Berling, T.: "What do we know about defect detection methods?”, IEEE Software, 2006
        • Paper 2 by Thelin, T.; Runeson, P.; Wohlin, C.: "Prioritized Use Cases as a Vehicle for Software Inspections”, IEEE Software, 2003
    • 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?":
        • Paper1
        • Paper2
      • Test incident report (IEEE 829-1998):
        • Template
      • 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)
    • Slides-mobile-app-testing / Slides-exam-preparation (video)
    • Kristina's blog post
  • Institute of Computer Science
  • Faculty of Science and Technology
  • University of Tartu
In case of technical problems or questions write to:

Contact the course organizers with the organizational and course content questions.
The proprietary copyrights of educational materials belong to the University of Tartu. The use of educational materials is permitted for the purposes and under the conditions provided for in the copyright law for the free use of a work. When using educational materials, the user is obligated to give credit to the author of the educational materials.
The use of educational materials for other purposes is allowed only with the prior written consent of the University of Tartu.
Terms of use for the Courses environment