Skip to content

About

Randomized Property-Based Testing Plugin for Coq

Topics

Resources

Contributing

Stars

296 stars

Watchers

14 watching

Forks

Latest commit

 

History

2,069 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QuickChick

CircleCI project chat

Description

Tutorial

Installation

From OPAM

# Add the Coq opam repository (if you haven't already)
opam repo add coq-released https://coq.inria.fr/opam/released
opam update
# Install the coq-quickchick opam package
opam install coq-quickchick

Simple Examples

  • examples/Tutorial.v
  • examples/RedBlack
  • examples/stlc
  • examples/ifc-basic

Running make tests in the top-level QuickChick folder will check and execute all of these. If successful, you should see "success" at the end.

Documentation

The public API of QuickChick is summarized in QuickChickInterface.v.

Top-level Commands

  • QuickCheck c
  • Sample g
  • QCDerive Arbitrary for c
  • QCDerive Show for c
  • QCDerive ArbitrarySizedSuchThat for (fun x => p)
  • QCDerive DecOpt for p
  • QCDerive EnumSizedSuchThat for (fun x => p)
  • QCDerive ArbitrarySizedSuchThat for (fun x => let (x1,x2...) := x in p)
  • QuickCheckWith args c
  • MutateCheck c p
  • MutateCheckWith args c p
  • MutateCheckMany c ps
  • MutateCheckManyWith args c ps

More resources

Here is some more reading material:


Developer's corner

Build dependencies

Dependencies are listed in coq-quickchick.opam.

# To get the dependencies, add the Coq opam repository if you haven't already
opam repo add coq-released https://coq.inria.fr/opam/released
opam update
opam install . --deps-only

Build

dune build

Run tests

dune runtest

Run extra tests for quickChick tool

dune install coq-quickchick  # Makes QuickChick available globally
dune build @cram

About

Randomized Property-Based Testing Plugin for Coq

Topics

Resources

Contributing

Stars

296 stars

Watchers

14 watching

Forks

Releases

Packages

Used by

Contributors

Languages