The course consists of two parts: For the regression test selection part, the purpose is to enable participants get an in-depth understanding of techniques for selecting test cases that should be executed following changes to the software under test. For the software fault prediction part, the purpose is to use software fault prediction models as a way to provide quality estimates using measurements from design and testing processes.
The course will further discuss methodology of building simple software fault prediction models and highlight its use.
- Introduction to regression testing and regression test selection
- Regression test selection techniques
- Basis of regression test selection
- Regression test selection for different applications
- Introduction to software fault prediction and benefits
- Classes of predictor variables to use for software fault prediction
- Techniques for software fault prediction
- Software fault prediction methodology
Learning outcomes: On completion of the course, students will be able to:
- Know different regression test selection techniques and the basis of their selection mechanisms.
- Understand the context in which to use different regression test selection techniques.
- Understand the limitations and advantages of different regression test selection techniques.
- Understand the use of software fault prediction to assist software testing.
- Understand the underlying methodological issues in regression test selection and building of software fault prediction models.
Related industrial challenges addressed in the course:
- Minimize test effort and increase test effectiveness in regression testing
- How to know which parts of the software under test to focus on during testing.
- Course title in Swedish: Kvalitetssäkring – Regressionstestning och felprediktering
- Course code: DVA466 (at MdH), MDH-24039 (at antagning.se)
- Course syllabus at Mälardalen University
- Autumn 2018 instance at Mälardalen University
- Admission requirements: 100 credits, out of which 70 credits are within technology or information technology, with at least 15 credits in programming or software development.Applicants with at least 12 month (full-time) documented work-experience from software development have priority in the selection process.