> Sure you can. The test displays what seed it used if you don't give
> it a seed. (I admit I haven't familiarized myself with the testing
> framework yet, so I don't know if we have a good way to make sure this
> seed is presented when there's a failure.)
>
> Random input testing is a very valuble strategy for discovering bugs a
> person wouldn't find through deterministic input. You can do a google
> search on "random input testing" and find a variety of articles on the
> topic.
Okay, I understand better now.
I'm used to running the GDB test suites and going through the failures
separating out test suite bugs from GDB bugs, and fixing the GDB bugs.
Random testing seems more like a "burn-in" kind of approach, where you
let it stew for a long time and see if you catch anything.
> > I'm also not sure whether every system's rand () function uses the
> > same algorithm.
>
> They do, for exactly the reasons you talked about. I don't think this
> is guaranteed by the ANSI standard, but I'm pretty sure it's true.
> And if you're really worried about this, we can certainly stop using
> rand() in favor of our own trivial PRNG.
Wow --- that's more coordination than I've come to expect from Unix
distributions. I'm sure we agree that it would be slightly nicer to
be using a PRNG under our own control, but unless you've got one lying
around somewhere, I don't think it's worth the hassle until we have a
problem.
Received on Sat Oct 21 14:36:09 2006