David Storrs wrote:
While I like the idea, I would point out that 1000 tests with randomly
generated data are far less useful than 5 tests chosen to hit boundary
I come from a hardware verification background. The trend in this
industry is driven from the fact that the computer can generate (and)
run 1000 random tests more quickly than a human can write 5 directed
tests. And a quick question: just what are the boundary cases of
"a+(b+c)==(a+b)+c" for a generic Ring type?
Of course, in the hardware world we give hints (constraints) to the
generators to bias it towards interesting cases. Plus the tools use
coverage data to drive the tests towards uncovered code (not entirely
automatic). Finally, we have tools that can spend 48+ hours analyzing a
small block (statically) to find really good set of tests.
- Re: Thoughs on Theory.pm Dave Whipp