Chapter 13. Structured Testing
More than the act of testing, the act of designing tests is one of the best bug preventers known. The thinking that must be done to create a useful test can discover and eliminate bugs before they are coded—indeed, test-design thinking can discover and eliminate bugs at every stage in the creation of software, from conception to specification, to design, coding, and the rest.
—Boris Beizer, Software Testing Techniques
Recently, a colleague asked me to assist him with devising thorough unit tests for one of his programs. He said he had spent about two weeks writing the program and three weeks testing it. I asked him if he had written down any of the tests. “No,” was the predictable reply. I pointed out to my colleague ...