Smallcheck and lazy smallcheck: automatic exhaustive testing for small values

  • Authors:
  • Colin Runciman;Matthew Naylor;Fredrik Lindblad

  • Affiliations:
  • University of York, York, England UK;University of York, York, England UK;Chalmers University of Technology and University of Gothenburg, Gothenburg, Sweden

  • Venue:
  • Proceedings of the first ACM SIGPLAN symposium on Haskell
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper describes two Haskell libraries for property-based testing. Following the lead of QuickCheck, these testing libraries SmallCheck and Lazy SmallCheck also use type-based generators to obtain test-sets of finite values for which properties are checked, and report any counter-examples found. But instead of using a sample of randomly generated values they test properties for all values up to some limiting depth, progressively increasing this limit. The paper explains the design and implementation of both libraries and evaluates them in comparison with each other and with QuickCheck.