BrowserUK,
    I dropped
tom a quick note and am looking into his module. Thanks for the link =).
(
Update:The main difference with my approach and
LectroTest is that it uses property definitions that you define manually and I am trying to infer these automatically from run time data.
    This still means that you are required to so some manual work, but you can just say I expect *this* result of *that* type and it can hound it with a series of tests to make sure this is the case, which would be far more cumbersome to create by hand.
    My approach can only *infer* what these characteristics are based on the input data. The more data (quantity and diverisity) you provide the better chance it would have of say inferring that inferring that the return value is generally 1 .. 100 rather than 1 .. 3 because you only supplied it a few samples. Ultimately Tom's module is a more robust method, but requires a little configiring on your the users part to get the best out of it (but, doesn't everything), but as
BrowserUK pointed out, similar concepts, slightly different approaches.
)
Regards Paul.