Skip to main content

Nice pytest plugin to help you with Django pluggable application testing.

Project description

https://github.com/idlesign/pytest-djangoapp

release lic ci coverage health

Description

Nice pytest plugin to help you with Django pluggable application testing.

This exposes some useful tools for Django applications developers to facilitate tests authoring, including:

  • Settings overriding

  • Template tags testing

  • User creation

  • Request object creation

  • Management command calls

  • Mailing

  • etc.

Suitable for testing apps for Django 1.7+.

How to use

Let’s say you have classical tests placing (inside application directory):

package_dir
|__ myapp
|  |__ __init__.py
|  |__ tests
|  |  |__ __init__.py
|  |  |__ conftest.py  <- Configure djangoapp here.
|
|__ setup.py

Add the following lines into conftest.py to configure djangoapp and start using it:

# conftest.py
from pytest_djangoapp import configure_djangoapp_plugin

pytest_plugins = configure_djangoapp_plugin()

Fixtures usage examples can be found in the documentation and the source code.

What about pytest-django

There is a couple of design decisions in pytest-django that might make it uncomfortable to work with.

  1. It uses setuptools entrypoints feature for pytest plugin discovery. It’s not a problem by itself, but all kinds of bootstrapping with side effects made by pytest-django just on startup, make the plugin a poor choice for cases of system-wide (i.e. not venv) installations.

  2. Philosophy that next to no unit test should require DB access may be quite annoying.

Documentation

http://pytest-djangoapp.readthedocs.org/

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-djangoapp-0.8.0.tar.gz (20.9 kB view details)

Uploaded Source

Built Distribution

pytest_djangoapp-0.8.0-py2.py3-none-any.whl (20.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file pytest-djangoapp-0.8.0.tar.gz.

File metadata

File hashes

Hashes for pytest-djangoapp-0.8.0.tar.gz
Algorithm Hash digest
SHA256 b847242a4c18f1c92cdeabb50ac06d4aacb374db4b0506e1119e89831e477cb7
MD5 e380429a7b31d8c313c8c557b127d0a9
BLAKE2b-256 bfde026e79e51da0e288bf81e6367599ae8d42f8584ed396317bfa92bfcd5b4c

See more details on using hashes here.

File details

Details for the file pytest_djangoapp-0.8.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for pytest_djangoapp-0.8.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 19554e0987182c3db0e049ec6c22482a773aaa12381c0697b56a952a54aeac39
MD5 45c5f62c0e68671f2c5fcc15c2762fcb
BLAKE2b-256 c97f6e4b2325c2ecb2cbb68139e46ed3a78ba8b58397b4c20b50cb50ce868ba3

See more details on using hashes here.

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