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:
Metadata
Release files for pyqcy 0.4.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyqcy-0.4.5.tar.gz | 18.3 kB | Details |
Release files / pyqcy-0.4.5.tar.gz
| Download URL | pyqcy-0.4.5.tar.gz |
|---|---|
| Size | 18.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4df9bf5ce73fecebe4ca22627560fad77ad807855f3260930f2025f807e6b22c
|
|
BLAKE2b-256 checksum How to use checksums |
2ec926f9fc4264b589c23d057760ac9bb3c3470002b11103231083674b3a7d84
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |