QuickCheck: An Automatic Testing Tool for Haskell - an interesting approach to automatic testing. The properties of functions are stored directly in the code and the test does not simply test predefined test cases, but runs through the property definitions with randomly generated values.