Hypothesis is a modern approach to property based testing (e.g. QuickCheck) in mainstream languages. The original Python version was seen recently on lobste.rs.
For folks who are interested in other property testing libraries on the JVM, there are several QuickCheck implementations in java, and there’s a popular one in scala called [ScalaCheck]. Of those, I’ve only used ScalaCheck, but it’s quite good.
yeah, the Clojure and Scala implementations are genuinely quite good, but they have the classic QuickCheck functional programming bias.
When I did some investigation previously there conclusion was that there wasn’t really much in the way of usable Java implementations. None of them implemented shrinking, many of them don’t even implement printing the failing example! There’s QuickTheories more recently which looks promising although it’s not much further along as a prototype than this is AFAICT and seems to again be in the more classic QuickCheck style.
Can anyone recommend tutorials, guides, or books on property based testing coming for someone coming from a more classical testing background? I’ve used property based testing in the past; but, my feeling is one of missing the forest for the trees.