Debugging is the process of troubleshooting bugs. Testing is the process of trying to break the problem. Testing can demonstrate the presence of bugs, but not their absense. Good way to write bug free code is to generate the code. If we do that based on a higher level language or specifications, assuming that the specification and generators are correct, so will be the code.
- 6.1 Test as You Write the Code
- 6.2 Systematic Testing
- 6.3 Test Automation
- 6.4 Test Scaffolds
- 6.5 Stress Tests
- 6.6 Tips for Testing
- 6.7 Who Does The Testing
- 6.8 Testing the Markov Program
- Software - Practice and Experience by Jon Bentley and Doug McIlroy
- Programming Pearls by Jon Bentley
- More Programming Pearls by Jon Bentley