Ответ
Анализ граничных значений (Boundary Value Analysis, BVA) — это техника тест-дизайна, при которой тестовые данные выбираются на границах допустимых диапазонов входных значений. Основная гипотеза: ошибки чаще возникают на границах разделов эквивалентности, чем в их центре.
Принцип работы: Если поле принимает значения от min до max, тестируются:
minиmax(допустимые границы)min - 1иmax + 1(недопустимые значения за границами)
Пример для диапазона от 1 до 100:
# Функция валидации ввода
def is_valid_input(value: int) -> bool:
return 1 <= value <= 100
# Тесты граничных значений с использованием pytest
def test_boundary_values():
# Допустимые границы
assert is_valid_input(1) == True # Нижняя граница (min)
assert is_valid_input(100) == True # Верхняя граница (max)
# Недопустимые значения за границами
assert is_valid_input(0) == False # Ниже минимума (min - 1)
assert is_valid_input(101) == False # Выше максимума (max + 1)
# Дополнительно: типичные внутренние значения
assert is_valid_input(50) == True # Значение внутри диапазона
Почему это важно:
- Эффективность: Небольшое количество тестов выявляет значительный процент дефектов.
- Типичные ошибки:
<=вместо<, ошибки на единицу (off-by-one). - Применение: Для числовых диапазонов, длины строк, количества элементов в списке.