dieharder is a fairly involved random number/uniform deviate generator
tester. It can either test any of its many pre-built and linked
generators (basically all of those in the Gnu Scientific Library plus
some others) or a potentially random data-set in a file. With file
input, it can manage either a variety of ASCII-formatted input or a raw
binary bit string. It is thus suitable for use in testing both software
RNG's and hardware RNG's.
dieharder does all of its work with a standalone, extensible library,
libdieharder. Therefore its tests can be integrated into other programs.
dieharder encapsulates following random number tests: George Marsaglia's
"Diehard" battery of tests, STS (v1.6) from NIST FIPS, Knuth's tests,
and more. Check the documentation for complete list of the tests and
references where possible. It is intended to be the "Swiss army knife of
random number testers", or "the last suite of random number testers
you'll ever wear".