Russel Winder's Website

Testing Propositions

During a conversation a couple of months ago, I was waxing lyrical about the rise of proposition-based testing. QuickCheck has been around and used in the Haskell community for quite a long while. The ideas are now though rapidly appearing in other programming languages. It used to be that every programming language had to have an example-based test framework, often based on the SUnit architectecture carried over to JUnit and then a variant in most other languages. It is now the case that every programming language is trying to have a port of QuickCheck, or at least something very similar. Certainly there is Hypothesis for Python (and possibly soon for Java), ScalaCheck (often used from ScalaTest) for Scala, KotlinTest supports property-based testing in Kotlin, Specks for Ceylon. In fact the list is getting longer and longer as QuickCheck-inspired, proposition-based testing gains traction in the mainstream.

It was suggested I should write a brief introductory article about this stuff. So I did. Except that it got a bit longer than originally anticipated. In this month's (August) Overload there is the article "Testing Propositions"[Overload 134, pp17–27, 2016-08]. Overload is a paper journal so you should go and buy it, or become a member of ACCU and get it that way. ACCU chooses to publish the journal electronically for free, so you can get a copy of the PDF from here or see the HTML rendering here. But you should join ACCU

If you have any comments about my article, email me.

Copyright © 2017 Russel Winder -