django-extant-test-db


Install
pip install django-extant-test-db==0.1.4

Documentation

Django Extant Test DB

This package provides a Django test runner that uses unittest2 test discovery, and can test against a pre-existing database when configured to do so.

Quickstart

pip install django-extant-test-db

In settings.py, set the following:

TEST_RUNNER = 'extant_test_db.runner.DiscoverRunner'

For any databases you want to be unmanaged by the test runner, add the following:

DATABASES = {
  ...
    'TEST': {
        'MANAGED': False,
    },
  ...
}

Configuration

This package provides a Django test runner that uses unittest2 test discovery, and can test against a pre-existing database when configured to do so. In order to use an extant database for tests (e.g., if you have a large database full of read-only data), in your database TEST settings, set a MANAGED flag:

DATABASES = {
    'default': {
        ...
    },
    'warehouse': {
        ...

        'TEST': {
            'MANAGED': False,
        },
    }
}

The database used will be the same as the one used for the webserver, though you can also provide an alternative test database name:

DATABASES = {
    ...
        'TEST': {
            'MANAGED': False,
            'NAME': os.environ['TEST_DB_NAME'],
        },
    ...
}