pytest-django allows you to test your Django project/applications with the pytest testing tool.
- Quick start / tutorial
- Changelog
- Full documentation: https://pytest-django.readthedocs.io/en/latest/
- Contribution docs
Version compatibility:
- Django: 3.2, 4.1, 4.2, 5.0 and latest main branch (compatible at the time of each release)
- Python: CPython>=3.8 or PyPy 3
- pytest: >=7.0
For compatibility with older versions, use the pytest-django 3.. series.
- Licence: BSD
- Project maintainers: Andreas Pelme, Floris Bruynooghe and Daniel Hahler
- All contributors
- GitHub repository: https://github.com/pytest-dev/pytest-django
- Issue tracker
- Python Package Index (PyPI)
pip install pytest-django
Running your test suite with pytest-django allows you to tap into the features that are already present in pytest. Here are some advantages:
- Manage test dependencies with pytest fixtures.
- Less boilerplate tests: no need to import unittest, create a subclass with methods. Write tests as regular functions.
- Database re-use: no need to re-create the test database for every test run.
- Run tests in multiple processes for increased speed (with the pytest-xdist plugin).
- Make use of other pytest plugins.
- Works with both worlds: Existing unittest-style TestCase's still work without any modifications.
See the pytest documentation for more information on pytest itself.