"It's A Bug Hunt" - Armor Plate Your Unit Tests in Cpp
summary
Argues that unit tests must be measurable tools: maximize accuracy and precision by choosing cases via equivalence partitioning, checking boundaries (the int_min vs int_max asymmetry example) and adding an explicit test for int_min or throwing std::domain_error. Recommends concrete tools and practices: use a real framework (Google Test), fuzzing and Matlab prototypes for validation, CI commits that show a failing test then a fix, and weigh mocks vs real components to trade off precision for accuracy.
AI-written summary · about
chapters (12)
- 0:00Unit testing introduction
- 1:05Why unit tests must catch bugs
- 3:55Aliens movie bug hunt lessons
- 9:34Accuracy and precision in tests
- 13:50Maximizing test accuracy
- 27:17Equivalence partitioning complex functions
- 31:50Ensuring test correctness
- 37:25Improving test precision
- 41:42Avoiding red herrings
- 47:55Handling contradictory results
- 51:04Armor plate unit tests
- 58:53Q&A
related talks
59mC++ Unit testing - the good, the bad & the ugly
01h 01mBack to Basics: Unit Testing in C++
01h 07mPragmatic Unit Testing in C++
01h 01mBack to Basics: Debugging and Testing in C++ Software Development
01h 01mAdvanced Unit Testing in C & C++
55mThe Science of Unit Tests
53mC++ Unit testing - the good, the bad & the ugly
01h 26mEqual Rights for Tests
