SWENG @ Télécom Paris

Advanced Software Testing and Fuzzing

Edition: 2026/2027 (1st ed.)
Last-Modified: 2025-06-30

Teachers

Syllabus

  • Principles of testing: why, what and when to test? Including: Regression testing, Test suite creation, Coverage criteria (and mutation), Oracle types, Flakiness.
  • Towards automation: property-based testing
  • Complete automation: fuzzing (black-box fuzzing of compilers, grey-box fuzzing for security vulnerabilities)
  • Advanced fuzzing: Complex oracles (backdoor detection), Symbolic execution and complex properties (non-interference, leakages, etc.)
  • Some notes about: automated program repair and automatic exploit generation