Миграции Django: базовые данные с тестами
Я добавляю некоторые базовые данные в базу данных с помощью миграций базы данных Django. Базовые данные состоят из предопределенных значений типов, которые доступны всем пользователям. Существует также возможность создания пользовательских типов пользователями.
Проблема в том, что при запуске тестов с опцией --keepdb таблицы будут промыты, а также будут удалены базовые данные. Без опции --keepdb тесты выполняются значительно медленнее.
Есть ли способ создать базовые данные, чтобы они были доступны для тестов с опцией --keepdb? Или есть ли способ запускать тесты так, чтобы базовые данные были доступны без повторного выполнения всех миграций?
Созданные мною миграции выглядят следующим образом:
def set_default_values(apps, schema_editor):
Type = apps.get_model('app1', 'Type')
Type(name='name1', user=None).save()
Type(name='name2', user=None).save()
Type(name='name3', user=None).save()
class Migration(migrations.Migration):
# ...
operations = [
migrations.RunPython(set_default_values, elidable=True)
]