A Django plugin for py.test.
Project description
pytest-django is a plugin for py.test that provides a set of useful tools for testing Django applications and projects.
Requirements
These packages are required to use pytest-django, when using pip they will be installed automatically.
Django 1.3+ (1.4 is supported)
py.test 2.3.4+
Quick Start
pip install pytest-django
Make sure DJANGO_SETTINGS_MODULE is defined and and run tests with the py.test command.
(Optionally) If you put your tests under a tests directory (the standard Django application layout), and your files are not named test_FOO.py, see the FAQ
Documentation
Why would I use this instead of Django’s manage.py test command?
Running the test suite with py.test offers some features that are not present in Djangos standard test mechanism:
Smarter test discovery (no need for from .foo import * in your test modules).
Less boilerplate: no need to import unittest, create a subclass with methods. Just write tests as regular functions.
No need to run all tests, it is easy to specify which tests to run.
Database re-use: no need to re-create the test database for every test run.
No hacks required to only run your apps, and not the 3rd party/contrib apps that is listed in your INSTALLED_APPS.
There are a lot of other nice plugins available for py.test.
No pain of switching: Existing unittest-style tests will still work without any modifications.
See the py.test documentation for more information on py.test.
Bugs? Feature suggestions?
Report issues and feature requests at the github issue tracker.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.