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

  • Command calls

  • etc.

Suitable 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 alongside with all kinds of bootstrapping with side effects made by pytest-django just on startup, makes 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.6.0.tar.gz (19.6 kB view details)

Uploaded Source

Built Distribution

pytest_djangoapp-0.6.0-py2.py3-none-any.whl (19.0 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

File hashes

Hashes for pytest-djangoapp-0.6.0.tar.gz
Algorithm Hash digest
SHA256 d7c8c5b36d0f5461f3c68bf1d5f1760ea466d9d588146d5f12f5b8102d71e950
MD5 4b24862723c8c4a2ea498a45f8eb5eaf
BLAKE2b-256 f19f431047058ef16e8d36e831469ecd3a0eceb24802df3bb254658d7321dcd8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytest_djangoapp-0.6.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e1b84cfa8dd87d808317a25145015393d9366bc81345e8f05e55b89105c42ad2
MD5 56e8e7b15aa6e075e6218370ff5788ec
BLAKE2b-256 ed025aef86ccad1db30b2f4bff39a63de7b5bc9af2604252afc6df31f70e1766

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