Skip to main content

django-nose provides all the goodness of nose in your Django tests, like:

  • Testing just your apps by default, not all the standard ones that happen to be in INSTALLED_APPS

  • Running the tests in one or more specific modules (or apps, or classes, or folders, or just running a specific test)

  • Obviating the need to import all your tests into tests/__init__.py. This not only saves busy-work but also eliminates the possibility of accidentally shadowing test classes.

  • Taking advantage of all the useful nose plugins

It also provides:

  • Fixture bundling, an optional feature which speeds up your fixture-based tests by a factor of 4

  • Reuse of previously created test DBs, cutting 10 seconds off startup time

  • Hygienic TransactionTestCases, which can save you a DB flush per test

  • Support for various databases. Tested with MySQL, PostgreSQL, and SQLite. Others should work as well.

django-nose requires nose 1.2.1 or later, and the latest release is recommended. It follows the Django’s support policy, supporting:

  • Django 1.8 (LTS) with Python 2.7, 3.4, or 3.5

  • Django 1.9 with Python 2.7, 3.4, or 3.5

  • Django 1.10 with Python 2.7, 3.4, or 3.5

  • Django 1.11 (LTS) with Python 2.7, 3.4, 3.5, or 3.6

  • Django 2.0 with Python 3.4, 3.5, 3.6, or 3.7

  • Django 2.1 with Python 3.5, 3.6, or 3.7

  • Django 2.2 with Python 3.5, 3.6, or 3.7

Note to users

nose has been in maintenance mode since at least 2015. django-nose is in maintenance mode as well, and the sole maintainer is no longer an active user. See Jazzband.co to learn how django-nose is maintained and how you can help. New projects should consider using pytest, or unittest with the Django testing framework.

Installation

You can get django-nose from PyPI with… :

$ pip install django-nose

The development version can be installed with… :

$ pip install -e git://github.com/jazzband/django-nose.git#egg=django-nose

Since django-nose extends Django’s built-in test command, you should add it to your INSTALLED_APPS in settings.py:

INSTALLED_APPS = (
    ...
    'django_nose',
    ...
)

Then set TEST_RUNNER in settings.py:

TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'

Development

Code:

https://github.com/jazzband/django-nose

Issues:

https://github.com/jazzband/django-nose/issues?state=open

Docs:

https://django-nose.readthedocs.io

Changelog

1.4.7 (2020-08-19)

1.4.6 (2018-10-03)

  • Document Django 2.0 and 2.1 support, no changes needed

  • Document Python 3.7 support

1.4.5 (2017-08-22)

  • Add Django 1.11 support

1.4.4 (2016-06-27)

  • Add Django 1.10 support

  • Drop Django 1.4 - 1.7, and Python 2.6 support

  • Drop South support

1.4.3 (2015-12-28)

  • Add Django 1.9 support

  • Support long options without equals signs, such as “–attr selected”

  • Support nose plugins using callback options

  • Support nose options without default values (jsatt)

  • Remove Django from install dependencies, to avoid accidental upgrades (jsocol, willkg)

  • Setting REUSE_DB to an empty value now disables REUSE_DB, instead of enabling it (wdoekes)

1.4.2 (2015-10-07)

  • Warn against using REUSE_DB=1 and FastFixtureTestCase in docs

  • REUSE_DB=1 uses new transaction management in Django 1.7, 1.8 (scottsexton)

  • Try to avoid accidentally using production database with REUSE_DB=1 (alexjg, eroninjapan)

  • Supported Django versions limited to current supported Django version 1.4, 1.7, and 1.8, as well as relevant Python versions.

1.4.1 (2015-06-29)

  • Fix version number (ezarowny)

  • Fix choice options, unbreaking nose-cover (aamirtharaj-rpx, jwhitlock)

  • Support 1.8 app loading system (dgladkov)

  • Support non-ASCII file names (singingwolfboy)

  • Better PEP8’d assertion names (roganov)

1.4 (2015-04-23)

  • Django 1.8 support (timc3, adepue, jwhitlock)

  • Support –testrunner option (st4lk)

  • Fix REUSE_DB second run in py3k (edrmp)

1.3 (2014-12-05)

  • Django 1.6 and 1.7 support (conrado, co3k, Nepherhotep, mbertheau)

  • Python 3.3 and 3.4 testing and support (frewsxcv, jsocol)

1.2 (2013-07-23)

  • Python 3 support (melinath and jonashaag)

  • Django 1.5 compat (fabiosantoscode)

1.1 (2012-05-19)

  • Django TransactionTestCases don’t clean up after themselves; they leave junk in the DB and clean it up only on _pre_setup. Thus, Django makes sure these tests run last. Now django-nose does, too. This means one fewer source of failures on existing projects. (Erik Rose)

  • Add support for hygienic TransactionTestCases. (Erik Rose)

  • Support models that are used only for tests. Just put them in any file imported in the course of loading tests. No more crazy hacks necessary. (Erik Rose)

  • Make the fixture bundler more conservative, fixing some conceivable situations in which fixtures would not appear as intended if a TransactionTestCase found its way into the middle of a bundle. (Erik Rose)

  • Fix an error that would surface when using SQLAlchemy with connection pooling. (Roger Hu)

  • Gracefully ignore the new --liveserver option introduced in Django 1.4; don’t let it through to nose. (Adam DePue)

1.0 (2012-03-12)

  • New fixture-bundling plugin for avoiding needless fixture setup (Erik Rose)

  • Moved FastFixtureTestCase in from test-utils, so now all the fixture-bundling stuff is in one library. (Erik Rose)

  • Added the REUSE_DB setting for faster startup and shutdown. (Erik Rose)

  • Fixed a crash when printing options with certain verbosities. (Daniel Abel)

  • Broke hard dependency on MySQL. Support PostgreSQL. (Roger Hu)

  • Support SQLite, both memory- and disk-based. (Roger Hu and Erik Rose)

  • Nail down versions of the package requirements. (Daniel Mizyrycki)

_(Older changes can be found in the full documentation)._

Download files

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

Source Distribution

django-nose-1.4.7.tar.gz (45.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_nose-1.4.7-py2.py3-none-any.whl (26.5 kB view details)

Uploaded Python 2Python 3

File details

Details for the file django-nose-1.4.7.tar.gz.

File metadata

  • Download URL: django-nose-1.4.7.tar.gz
  • Upload date:
  • Size: 45.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.4

File hashes

Hashes for django-nose-1.4.7.tar.gz
Algorithm Hash digest
SHA256 a4885cd002d65fd2de96e2bb2563ef477c3fbe207009360c015fca5c3b5561b7
MD5 fe386c6e218b0f7b353494329c380a79
BLAKE2b-256 4cd6a340da9854cf0a2b54e23cf9147911b1e15a831911428983dd0158572ce9

See more details on using hashes here.

File details

Details for the file django_nose-1.4.7-py2.py3-none-any.whl.

File metadata

  • Download URL: django_nose-1.4.7-py2.py3-none-any.whl
  • Upload date:
  • Size: 26.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.4

File hashes

Hashes for django_nose-1.4.7-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 304adc447ee35b889b733d7106004f98aa401d8387ddcada5d4f2239d86790a9
MD5 dc7ce4e4f02da903b3eeedf5deba7be9
BLAKE2b-256 a55e804eda7b128162d215de14c0572717f16508cbdb899d4e839f51cef5481e

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.4.7 This release

2 files

1.4.6

2 files

1.4.5

2 files

1.4.4

2 files

1.4.3

2 files

1.4.2

2 files

1.4.1

2 files

1.4

2 files

1.3

1 file

1.2

1 file

1.1

1 file

1.0

1 file

0.1.3

1 file

0.1.2

1 file

0.1

1 file

0.0.3

1 file

0.0.2

1 file

0.0.1

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page