Я понял, что поведение по умолчанию для pytest-django заключается в создании тестовой базы данных путем применения миграций и удаления базы данных после запуска теста.
У меня НЕТ файла conftest.py, только файл pytest.ini:
DJANGO_SETTINGS_MODULE = myproject.test_settings
python_files = tests.py test_*.py *_tests.py
Я запускаю pytest с примером теста, который обращается к базе данных следующим образом:
pytest -v test_db_access.py
Я получаю сообщение об ошибке:
E OperationalError: ERROR: No such database: test_database
Если я создаю conftest.py для указания на мою существующую базу данных, все мои тесты выполняются нормально.
У меня вопрос: как я могу воспользоваться поведением по умолчанию в pytest-django? Что мне нужно, кроме моего pytest.ini, показанного выше?
Я хочу, чтобы pytest-django:
- Посмотрите на настройки в pytest.ini
- Создание тестовой базы данных
- Запуск миграций
- Выполнить тесты
- Удалить базу данных
Информация о версии:
Python 2.7
Django 1.11.12
djangorestframework
Version: 3.8.2
Любая помощь приветствуется.