Skip to main content

A Django plugin for py.test.

Project description

Build Status

pytest-django is a plugin for pytest that provides a set of useful tools for testing Django applications and projects.

Quick Start

  1. pip install pytest-django

  2. Make sure DJANGO_SETTINGS_MODULE is defined and and run tests with the py.test command.

  3. (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

Documentation is available on Read the Docs.

Why would I use this instead of Django’s manage.py test command?

Running the test suite with pytest 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.

  • Injection of test depencies with funcargs

  • 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 pytest.

  • No pain of switching: Existing unittest-style tests will still work without any modifications.

See the pytest documentation for more information on pytest.

Contributing

Read the contributing page from the documentation.

To run the project’s tests:

make test

To build the project’s docs:

make docs

Bugs? Feature suggestions?

Report issues and feature requests at the github issue tracker.

Project details


Download files

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

Source Distribution

pytest-django-2.3.1.tar.gz (13.2 kB view hashes)

Uploaded Source

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