Lecture - Imperative Programming TT23, VI
- Test-driven development
- Start off by writing tests, and then write code to make sure the tests pass
- Tests drive the design and implementation
- Testing at different levels
- Unit testing: test individual pieces of the system
- Integration testing: test how pieces are assembled into more complex subsystems
- System testing: test the entire application end-to-end
- Black box vs white box testing
- Black box: no knowledge about the internal organisation of a component. Influenced only by the interface
- White box: tests are influenced by the implementation
- Coming up with tests
- Test representative samples of each equivalence class
- Boundary testing: most programs fail at the boundaries of the input
- A change in a system that breaks seemingly unrealted parts is called a regression
Flashcards (GPT-4)
Don’t think any of these warrant a flashcard.