1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
|
===========================
pytest-django Documentation
===========================
pytest-django is a plugin for `pytest`_ that provides a set of useful tools
for testing `Django`_ applications and projects.
.. _pytest: https://pytest.org/
.. _Django: https://www.djangoproject.com/
Quick Start
===========
.. code-block:: bash
$ pip install pytest-django
Make sure ``DJANGO_SETTINGS_MODULE`` is defined (see
:ref:`configuring_django_settings`) and make your tests discoverable
(see :ref:`faq-tests-not-being-picked-up`):
.. code-block:: ini
# -- FILE: pytest.ini (or tox.ini)
[pytest]
DJANGO_SETTINGS_MODULE = test_settings
# -- recommended but optional:
python_files = tests.py test_*.py *_tests.py
Run your tests with ``pytest``:
.. code-block:: bash
$ pytest
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 Django's standard test mechanism:
* Less boilerplate: no need to import unittest, create a subclass with methods. Just write tests as regular functions.
* `Manage test dependencies with fixtures`_.
* Run tests in multiple processes for increased speed.
* There are a lot of other nice plugins available for pytest.
* Easy switching: Existing unittest-style tests will still work without any modifications.
See the `pytest documentation`_ for more information on pytest.
.. _Manage test dependencies with fixtures: http://docs.pytest.org/en/latest/fixture.html
.. _pytest documentation: http://docs.pytest.org/
Bugs? Feature Suggestions?
==========================
Report issues and feature requests at the `GitHub issue tracker`_.
.. _GitHub issue tracker: http://github.com/pytest-dev/pytest-django/issues
Table of Contents
=================
.. toctree::
:maxdepth: 3
tutorial
configuring_django
managing_python_path
usage
database
helpers
faq
contributing
changelog
Indices and Tables
==================
* :ref:`genindex`
* :ref:`modindex`
|