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

Что показывает мутационное тестирование

Вопрос

Инструмент мутационного тестирования заменил > на >= в проверке лимита, и все тесты остались зелёными. О чём это говорит?

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

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

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

Коротко

Правильный ответ: Граница лимита не проверена ни одним тестом, нужен тест. Выживший мутант значит, что изменение поведения на границе никто не заметил.

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

  1. Инструмент ошибся: такая замена не меняет поведение кода
  2. Граница лимита не проверена ни одним тестом, нужен тестправильный ответ
  3. Нужно поднять покрытие строк, тогда мутант будет убит
  4. Код содержит баг, и правильный оператор здесь >=

Разбор

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

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

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