CS246 Lecture Notes - Lecture 12: Regression Testing
Document Summary
Testing is an essential, ongoing part of program development and should be integral from start to finish. Ideally, developer and tester should be different people. Human testing: humans look over the code and find flaws, code inspections and walkthroughs (not on assignments) Run program on selected input, check output again speed. Can"t test everything as running a program is expensive so test cases must be chosen carefully. Test first because the program doesn"t need to be written to be black box tested. Don"t know how the program is written but know what it"s supposed to do. Various classes of input. eg: numeric ranges, positive vs negative. Multiple simultaneous boundaries (corner cases) (for x, y - one is positive, one is negative) We don"t worry about it in this course much unless marmoset times out. Make sure new changes to the program don"t break the old test cases.