Выбор ответа Middle ИИ и тесты обновлено

Тест на реализацию

Вопрос

Сгенерированный тест проверяет, что внутри checkout() вызван приватный _calcTax ровно один раз с такими аргументами. Чем это плохо?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Тест сломается при рефакторинге, хотя поведение верное. Тест привязан к внутреннему устройству, а не к результату.

Варианты ответа

  1. Ничем, это самый надёжный способ проверить расчёт налога
  2. Тест сломается при рефакторинге, хотя поведение верноеправильный ответ
  3. Приватные методы в тестах вызывать запрещено синтаксисом
  4. Такой тест медленнее, чем проверка итоговой суммы заказа

Разбор

Тест привязан к внутреннему устройству, а не к результату. Перенесёте расчёт в другой метод, и тест упадёт без бага. Проверять нужно наблюдаемое поведение: итоговую сумму и налог в ответе. Синтаксического запрета нет, а скорость примерно одинаковая.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.