CloseHelpPrint
Kies de Nederlandse taal
Course module: 192170015
192170015
Testing Techniques
Course info
Course module192170015
Credits (ECTS)5
Course typeCourse
Language of instructionEnglish
Contact persondr. M.I.A. Stoelinga
E-mailm.i.a.stoelinga@utwente.nl
Lecturer(s)
Contactperson for the course
dr. M.I.A. Stoelinga
Examinator
dr. M.I.A. Stoelinga
Academic year2016
Starting block
2A
Application procedureYou apply via OSIRIS Student
Registration using OSIRISYes
Learning goals
The course presents a variety of frameworks for test case generation. After passing this course, the student is able to:
  • explain, apply, comparen these frameworks.
  • reason about the mathematical properties of these techniques and
  • extend these with new features and adapt them to new testing contexts.

Objectives
In particular, after passing this class, the student has the following abilities.
The student is able to describe the role of testing within the software development process:
The student can apply, extend, compare, classical testing techniques (most notably namely Equivalence Partitioning, Boundary Value Analysis, Coverage-based methods,); FSM test theory, ioco test theory. In particular:
  • S/he can generate, execute and evaluate tests based on these methods.
  • S/he can also determine the code-coverage of a given test (suite) and find test suites with a given amount of coverage.
  • The student can mathematically prove properties of the test generation methods mentioned above (Classical, FSM, LTS).
  • The student can explain, apply, extend, the notions of soundness and completeness for test suites of the test frameworks.
  • The student can select the most appropriate test generation method for a given test situation and adapt the frameworks to new testing contexts.
  • The student can explain the need for test automation and apply appropriate test tooling.
Content
Testing is an important part of almost any software development project. Systematic and effective tests are crucial in the quality control of software products. However, the testing phase is often underestimated in the software life cycle. This course treats a number of techniques, methods and tools to test software in a systematic, structured and effective way. We will discuss both existing techniques and new development in the world of software testing. The techniques presented during the course focus on the testing of embedded systems and communication protocols. Topics to be treated are: types, aspects and phases in software testing, test automation, test tools, test case design, test coverage measures, test organization, test generation from (formal) specification. Some courses will be given by invited software testers from industry.
Assumed previous knowledge
Bachelor TI
PARTICIPATING STUDY
M-CSC
PARTICIPATING STUDY
M-TEL
Required materials
Book
Practical Software Testing Illene Burnstein
Reader
Recommended materials
-
Instructional modes
Lecture

Project

Tutorial

Tutorial

Tests
Exam

CloseHelpPrint
Kies de Nederlandse taal