Привет, искатели багов и мастера качества! Сегодня мы погрузимся в мир тестирования и разберём распространённые ошибки и анти-паттерны, которые могут подстерегать даже опытных тестировщиков. Вместе с реальными примерами и комментариями к коду мы научимся их избегать. Готовы? Поехали! Суть ошибки:
Тестировщик забывает проверить крайние значения входных данных, предполагая, что они не будут использоваться. Пример: def calculate_discount(price):
if price > 100:
return price * 0.1
return 0 Тест: assert calculate_discount(99) == 0 Комментарий:
Здесь мы проверяем, что при цене 99 скидка не применяется. Но что будет, если цена равна 100? Мы пропустили граничное условие. Нужно добавить тест: assert calculate_discount(100) == 10 Решение:
Всегда проверяйте граничные значения, чтобы убедиться, что программа корректно обрабатывает все возможные входные данные. Суть ошибки:
Функция возвращает значения разных типов, что усложняет понимание и использование её результатов. Пример: