Выбор ответа Middle ИИ и тесты обновлено
Тест на реализацию
Вопрос
Сгенерированный тест проверяет, что внутри checkout() вызван приватный _calcTax ровно один раз с такими аргументами. Чем это плохо?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Тест сломается при рефакторинге, хотя поведение верное. Тест привязан к внутреннему устройству, а не к результату.
Варианты ответа
- Ничем, это самый надёжный способ проверить расчёт налога
- Тест сломается при рефакторинге, хотя поведение верноеправильный ответ
- Приватные методы в тестах вызывать запрещено синтаксисом
- Такой тест медленнее, чем проверка итоговой суммы заказа
Разбор
Тест привязан к внутреннему устройству, а не к результату. Перенесёте расчёт в другой метод, и тест упадёт без бага. Проверять нужно наблюдаемое поведение: итоговую сумму и налог в ответе. Синтаксического запрета нет, а скорость примерно одинаковая.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.