QuickCheck

QuickCheck: a lightweight tool for random testing of Haskell programs. QuickCheck is a tool which aids the Haskell programmer in formulating and testing properties of programs. Properties are discribed as Haskell functions, and can be automatically tested on random input, but it is also possible to define custom test data generators. We present a number of case studies, in which the tool was successfully used, and also point out some pitfalls to avoid. Random testing is especially suitable for functional programs because properties can be stated at a fine grain. When a function is built from separately tested components, then random testing suffuces to obtain good coverage of the definition under test.

This software is also peer reviewed by journal TOMS.


References in zbMATH (referenced in 97 articles , 1 standard article )

Showing results 1 to 20 of 97.
Sorted by year (citations)

1 2 3 4 5 next

  1. Albert, Elvira; Bezirgiannis, Nikolaos; De Boer, Frank; Martin-Martin, Enrique: A formal, resource consumption-preserving translation from actors with cooperative scheduling to Haskell (2020)
  2. Lukšič, Žiga; Pretnar, Matija: Local algebraic effect theories (2020)
  3. Bendkowski, Maciej; Bodini, Olivier; Dovgal, Sergey: Statistical properties of lambda terms (2019)
  4. Bendkowski, Maciej; Lescanne, Pierre: On the enumeration of closures and environments with an application to random generation (2019)
  5. Caballero, Rafael; Martin-Martin, Enrique; Riesco, Adrián; Tamarit, Salvador: A core Erlang semantics for declarative debugging (2019)
  6. Ghica, Dan R.; Alyahya, Khulood: Latent semantic analysis of game models using LSTM (2019)
  7. Johansson, Moa: Lemma discovery for induction. A survey (2019)
  8. Mostowski, Wojciech: Model-based fault injection for testing gray-box systems (2019)
  9. Paulson, Lawrence C.; Nipkow, Tobias; Wenzel, Makarius: From LCF to Isabelle/HOL (2019)
  10. Austin, Evan; Batson, Scott; Curry, Peter; Williams, Bryan: Finding a middle ground for computer-aided cryptography (2018)
  11. Bendkowski, Maciej; Lescanne, Pierre: Counting environments and closures (2018)
  12. Caballero, Rafael; Martin-Martin, Enrique; Riesco, Adrián; Tamarit, Salvador: Declarative debugging of concurrent Erlang programs (2018)
  13. Dubois, Catherine; Giorgetti, Alain: Tests and proofs for custom data generators (2018)
  14. Ishii, Hiromi: A purely functional computer algebra system embedded in Haskell (2018)
  15. Albert, Elvira; Bezirgiannis, Nikolaos; de Boer, Frank; Martin-Martin, Enrique: A formal, resource consumption-preserving translation of actors to Haskell (2017)
  16. Brandt, Jörgen; Reisig, Wolfgang; Leser, Ulf: Computation semantics of the functional scientific workflow language Cuneiform (2017)
  17. Cruanes, Simon: Superposition with structural induction (2017)
  18. Cruanes, Simon: Satisfiability modulo bounded checking (2017)
  19. David Insa, Sergio Pérez, Josep Silva, Salvador Tamarit: Erlang Code Evolution Control (2017) arXiv
  20. Gerdes, Alex; Heeren, Bastiaan; Jeuring, Johan; van Binsbergen, L. Thomas: Ask-elle: an adaptable programming tutor for Haskell giving automated feedback (2017) MathEduc

1 2 3 4 5 next