После операции повторно прочитайте запись и сравните нужные поля с ожидаемыми значениями. Учитывайте identity map SQLAlchemy Session и видимость изменений в текущей транзакции.
Как с помощью SQLAlchemy проверить, что данные в БД изменились?
После операции повторно прочитайте запись и сравните нужные поля с ожидаемыми значениями. Учитывайте identity map SQLAlchemy Session и видимость изменений в текущей транзакции.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
После операции повторно прочитайте запись и сравните нужные поля с ожидаемыми значениями. Учитывайте identity map SQLAlchemy Session и видимость изменений в текущей транзакции.
Повторный запрос не всегда перезаписывает уже загруженные ORM-атрибуты. Можно использовать свежую Session или намеренное обновление через refresh/expire либо populate_existing в подходящем сценарии. Сначала убедитесь, что внешняя операция зафиксирована и текущая изоляция позволяет её увидеть. Не обновляйте объект так, чтобы случайно потерять собственные несохранённые изменения теста. Для асинхронной обработки задайте ограниченное ожидание результата.
Источник: docs.sqlalchemy.org.