-
Notifications
You must be signed in to change notification settings - Fork 10
Test against your live database connections with this custom Django testrunner
License
boldprogressives/django-testrunner-use_live_db
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Sometimes you need to run Django test suites against a live database connection that you also use for development or production. Django makes this very difficult: out of concern for your data's well-being, the test runner will create a clean mirror of each of your databases before running your tests, and run the tests against those test databases. (See https://docs.djangoproject.com/en/dev/topics/testing/#the-test-database for more information about this feature.) Best practices are great, but you might just need to disable this feature. You might be on a shared server where you don't have permissions to create and destroy new databases; you might have a large, complex legacy database that you want to test against directly for convenience; you might have configured a database connection with only read/select privileges which you want to run querying tests against, since you know that you can't accidentally mess up any live data with your tests anyway. In those situations, use the test runner provided by this library. Usage ===== First, make sure to configure the test runner in ``settings.py``: TEST_RUNNER = 'use_live_db.TestRunner' Then, mark one or more of your DATABASES with a special attribute `USE_LIVE_FOR_TESTS` which tells the test runner to use it as-is in tests, instead of trying to create a copy: DATABASES = { 'default': { 'ENGINE': #... 'NAME': #... # ... 'USE_LIVE_FOR_TESTS': True }, } If you omit this value from any of the connections in your DATABASES, then Django's default behavior will apply. So, for example, you could configure your default database to have tests run against a copy per Django's typical behavior; and set ``USE_LIVE_FOR_TESTS`` on your read-only connection to a supplemental legacy database which has data that your tests depend on.
About
Test against your live database connections with this custom Django testrunner
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published