CSC151 2009F, Class 40: Testing Your Procedures Admin: * Apologies: I am behind on almost all of my work. * Reading for Friday: Project Ideas. * Warning: I need to remove a no-longer-applicable project idea. * We'll discuss the project a bit more on Friday. * Assignment 8 is now ready. * EC for * Attending NCAA DIII Men's Soccer Regionals Saturday (bus plans in the works) * Attending orchestra concert on Sunday at 4pm in Herrick * ISO Food Bazaar thingy on Sunday night. Eat L's and D's food * Among the things that my policies lead me to say ... * EC for attending Fetish this weekend * Is there anything you'd like to discuss about the campus climate report? Overview: * Why test? * Strategies for testing. * The primary testing operations. Need to make sure that our procedures work correctly * Technique one: Mathematical proof * Proofs are often much longer than programs * Proofs often take much longer to write than programs * Technique two: Scientific experiments * Hypotheses: The procedure will give *this output* on *this input* * Unit testing: CS response to all of this * Lots of tests benefit you * You should write the tests *first* * Otherwise the tests you write are biased by the code you write. * You want the computer to do them automatically