Last updated: Sep 23, 26 20:28 UTC | Permalink
3 - Test Adequacy
Learning Objectives:
After this lecture, you should be able to:
- Explain three general ways of judging whether we’ve written enough tests
- Explain how contracts provide better guidance than types in choosing test cases
- Explain various measures of code coverage (including statements, branches, functions, and lines)
- Explain how adversarial testing helps gauge whether our tests are sensitive enough to detect likely bugs
Important Dates:
- Individual Project 1 Due Wednesday, Sep 23 by 5pm (ET)
Lecture Slides:
- Test Adequacy Slides PDF, PPT
Activities
Resources
- Go Testing By Example, by Rob Pike — source of the “Coverage is no substitute for thought” quote from the slides with a lot of good and general advice about testing
- Software Engineering at Google: “Testing”
- StrykerJS - Mutation Testing Tool
- Are mutants a valid substitute for real faults in software testing?