В БД Django TestCase отсутствуют столбцы, которые есть в БД, когда я запускаю сервер

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

Любые предложения

(venv) PS C:\Users\mtmcd\Azure Devops\Blindspot> python manage.py runserver 127.0.0.1:8888
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
May 19, 2022 - 11:02:25
Django version 3.0.8, using settings 'blindspot.settings'
Starting development server at http://127.0.0.1:8888/
Quit the server with CTRL-BREAK.
[19/May/2022 11:02:48] "GET /endpoints/list HTTP/1.1" 200 82572

Но когда я запускаю тест python manage.py, я получаю

(venv) PS C:\Users\mtmcd\Azure Devops\Blindspot> python manage.py test
Creating test database for alias 'default'...
Traceback (most recent call last):
  File "C:\Users\mtmcd\Azure Devops\Blindspot\venv\lib\site-packages\django\db\backends\utils.py", line 86, in _execute
    return self.cursor.execute(sql, params)
psycopg2.errors.UndefinedColumn: column agents_simulationaction.alert_test_name does not exist
LINE 1: ...d", "agents_simulationaction"."security_tool_id", "agents_si...

Я смог заставить это работать, сделав следующее.

Удаление всех миграций, выполнение makemigrations, удаление записей в таблице django_migrations, затем migrate --fake на основной БД. Это позволило успешно создать тестовую БД

Вернуться на верх