Overview
This course on mutation testing in Python aims to teach learners the technique of systematically mutating source code to validate test suites. The course covers the theory behind mutation testing, the basic algorithm, and the goals of coverage analysis and detecting unnecessary code. Learners will also explore examples of mutations, operators, module management, multiprocessing, asyncio, and operational overview. The teaching method involves a presentation style lecture with a focus on practical examples and explanations. This course is intended for Python programmers interested in improving the effectiveness of their test suites through mutation testing.
Syllabus
Introduction
What is mutation testing?
Basic algorithm
What does mutation testing tell us?
Goal #1: Coverage analysis
Goal #2: Detect unnecessary code
Examples of mutations
It takes a loooooooong time
Incompetence detection
Equivalent mutants
Cosmic Ray operates on packages
Test system plugins
Operators
Example operator: Reverse unary subtraction
Module management: overview
Module management: Finder
Module management: Loader
multiprocessing
asyncio
Operational overview
Taught by
GOTO Conferences