This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

QuickCheck-like testing framework for Python

Project Description

pyqcy [pyksi:] is an automated testing framework for Python inspired by the wonderful QuickCheck library for Haskell.

What’s the idea?

Instead of writing fully-fledged test cases, with pyqcy you simply define logical properties that your code is expected to satisfy. Based on that, pyqcy will automatically generate test cases for you - hundreds of them, in fact!

How does it look like?

For starters, try this:

from pyqcy import qc, int_, main

@qc
def addition_actually_works(
    x=int_(min=0), y=int_(min=0)
):
    the_sum = x + y
    assert the_sum >= x and the_sum >= y

if __name__ == '__main__':
    main()
$ pip install pyqcy
$ python test.py
addition_actually_works: passed 100 tests.

pyqcy generated 100 test cases and checked whether they all pass. For a few lines of code, that’s rather nice, isn’t it? :)

Of course, you are not limited to integers - there is built-in support for all standard types, including lists and dictionaries. Custom classes can be used as well: just specify how to generate an @arbitrary object of your class, and you’re set.

Hey, I like it!

Then check these links to find out more:

Release History

Release History

This version
History Node

0.4.5

History Node

0.4.4

History Node

0.4.3

History Node

0.4.2

History Node

0.4.1

History Node

0.4

History Node

0.3.3

History Node

0.3.2

History Node

0.3.1

History Node

0.3

History Node

0.2.2

History Node

0.2.1

History Node

0.2

History Node

0.1.1

History Node

0.1

Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
pyqcy-0.4.5.tar.gz (18.3 kB) Copy SHA256 Checksum SHA256 Source Apr 14, 2013

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting