Skip to main content

A library for property-based testing of Python programs.

Project description

GitHub PyPI PyPI - Downloads Discord GitHub Sponsors Documentation Status

Notice

This project is WIP, but almost done!

  • Implemtation
  • Documentation
  • Dependencies

Minigun

A QuickCheck-like library for property-based unit-testing of Python programs.

Minigun is inspired by QCheck, which in turn was inspired by QuickCheck. Both are libraries that provide implementations for performing property-based unit-testing; for OCaml and Haskell respectively.

If you would like a bit of motivation as to why you should use a QuickCheck-like system for testing your project, then I would recommend that you watch:

If you wish to learn more about the subject, I can recommend Jan Midtgaard's lecture materials; it is OCaml based but translates easily to other QuickCheck-like libraries for other languages.

Install

Minigun is currently only supported for Python >=3.10, although it might work with older versions. It is distributed with pip and can be installed with the following example command:

$ python3 -m pip install minigun-soren-n

Documentation

A tutorial as well as reference documentation for the API can be found at Read The Docs.

Examples

The following projects use Minigun for testing:

If you have used Minigun for testing of a public project, and would like it added to the list, then please file an issue with a link to the project.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

minigun_soren_n-0.3.8-py2.py3-none-any.whl (20.7 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page