Задать вопрос
velvetcat
@velvetcat

Можно ли проверять, что модель записала в БД, средствами самой модели?

Я разрабатываю через тестирование модель (Queue), и, в частности, ее метод queue.add (item). Структура теста:
- очищаем базу
- вызываем queue.add(item)
- убеждаемся, что item лежит в БД.

Есть две опции для первого и последнего пунктов:
а) очистить таблицу вручную, проверять так же прямым запросом
б) очистить очередь методом queue.clear(), проверить методом queue.find().

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

В чем концептуальная разница между этими двумя способами? А может, есть еще какой-то вариант? Что предпочесть и в какой ситуации? Спасибо.
  • Вопрос задан
  • 2259 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Учебный центр IBS
    DEV-009_C++ Разработка через тестирование (TDD) на языке C++
    1 неделя
    Далее
  • Хекслет
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Stepik
    Продвинутый Django 5 для продолжающих
    2 недели
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы