Much ado about testing
summary
Compares property-based testing and metamorphic testing for finding bugs: use property-based testing to generate large random inputs but avoid duplicating oracle logic, and use metamorphic testing when no oracle exists (e.g., apply image-augmentation transformations to produce labeled cases for a face detector). Presents executable decision tables as oracles, gives code-level strategies and tooling pointers, and reports real results such as compiler fuzzing that found ~79 bugs in GCC and ~68 in LLVM and metamorphic checks that caught API and search bugs.
AI-written summary · about
chapters (8)
- 0:00Software testing intro
- 3:30FizzBuzz case study
- 11:14Limitations of example tests
- 17:55Property-based testing
- 28:39Metamorphic relations intro
- 37:27Advanced metamorphic testing
- 44:24Compiler testing with metamorphic
- 47:37Conclusion








