зеркальная настройка нескольких баз данных в тестировании Django 2.1 - PullRequest
0 голосов
/ 06 ноября 2018

Вот ситуация:

Мы создаем новый маленький API REST в Django 2.1. Ему необходим доступ только для чтения к четырем таблицам, по две в каждой из двух баз данных mysql. Для конкретности, скажем, два БД называются А и В, а таблицы один, два, три и четыре. Так, A.one, B.two, C.three и C.four.

Я уже использую решение из Django Testing - я хочу, чтобы была создана только одна из моих баз данных - как указать , чтобы тесты не могли общаться с реальными базами данных.

То, что я хочу сделать, это настроить четыре таблицы в тестовой базе данных (models.py уже настроен для этого с managed = false) с тестовыми данными, которые отражают вышеуказанную базу данных и структуру таблиц, но внутри тестовой базы данных sqlite. , Это делается для того, чтобы, например, запрос к B.three был правильно направлен на test_B.three, а не на A.three или какую-либо таблицу верхнего уровня.

Одна из причин этого заключается в том, что наши базы данных очень большие, а некоторые таблицы содержат два или три миллиона строк. Мы не хотим, чтобы тесты обращались к ним или копировали с них данные. Кроме того, поскольку приложение не владеет схемами базы данных, если мы используем какие-либо миграции, нам необходимо явно ограничить их тестовой базой данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...