Hi Arian,
When in doubt and with a bit of time to spare, you can always use both :-)
But here is some quick list of pros and cons:
LeanCheck/enumerative guarantees the smallest/simplest counterexample if one is found. This without the need of shrinking.
LeanCheck/enumerative allows for existential properties.
LeanCheck/enumerative guarantees that tests aren’t repeated most of the time.
QuickCheck/random always hits different test cases, so in the long run you may get more test coverage. With LeanCheck you only get more coverage when you configure more tests.
LeanCheck/enumerative is more memory intensive when compared to QuickCheck/random. With LeanCheck you may run out of memory when you’re running tens of millions of tests.
You can find more details here:
https://github.com/rudymatela/leancheck/blob/master/doc/faq.md#what-are-the-differences-between-quickcheck-and-leancheck
On Thu, Jan 17, 2019 at 10:57:17AM +0100, Arian van Putten wrote:
Awesome. I always wondered what the pros/cons are compared to random testing like Quick check. When should I reach to enumerative testing?