Ответ
Баг (дефект, ошибка) — это недостаток в компоненте или системе, который может привести к отклонению фактического результата ее работы от ожидаемого (требований). Проще говоря, это когда программа ведет себя не так, как было задумано.
Пример бага в коде:
# Ожидается функция сложения
def add(a, b):
return a - b # Баг: вместо сложения выполняется вычитание
print(add(2, 3)) # Ожидаемый результат: 5, Фактический результат: -1
Ключевые аспекты бага:
- Воспроизводимость: Баг должен быть воспроизведен по четким шагам для его анализа и исправления.
- Приоритет и серьезность: Баги классифицируют по влиянию на систему (критический, высокий, средний, низкий).
- Источник: Баг может быть следствием ошибки не только в коде, но и в дизайне, архитектуре или самих требованиях.
Важное различие:
- Баг (Defect) — это ошибка, влияющая на функциональность.
- Дефект (Fault/Flaw) — более широкое понятие, включающее нефункциональные проблемы (например, опечатка в тексте интерфейса, не влияющая на работу).
Цель тестирования — как можно раньше находить и документировать баги, чтобы минимизировать стоимость их исправления.