Выбор ответа Middle Тестирование и pytest обновлено
Что говорит 100% покрытие
Вопрос
Покрытие тестами 100% по строкам. Что это гарантирует?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Каждая строка выполнилась хотя бы раз, не больше. Покрытие строк показывает только факт выполнения.
Варианты ответа
- В коде нет ошибок в покрытых строках
- Все ветки условий проверены во всех комбинациях
- Каждая строка выполнилась хотя бы раз, не большеправильный ответ
- Все краевые случаи учтены тестами
Разбор
Покрытие строк показывает только факт выполнения. Тест может выполнить строку без единого assert, а if a and b даёт 100% строк при одной комбинации. Покрытие ветвей (--cov-branch) точнее, но и оно не проверяет краевые значения. Покрытие хорошо находит непокрытый код, но не доказывает качество тестов.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.