Какие тестовые случаи (checkpoints) следует использовать для проверки интервала от 5 до 10 включительно?

«Какие тестовые случаи (checkpoints) следует использовать для проверки интервала от 5 до 10 включительно?» — вопрос из категории Техники тест-дизайна, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для проверки интервала [5, 10] применяются техники тест-дизайна, такие как анализ граничных значений и классы эквивалентности.

1. Проверка корректных значений (позитивные тесты)

  • Граничные значения:
    • Нижняя граница: 5
    • Верхняя граница: 10
  • Внутренние значения (из валидного класса эквивалентности):
    • Любое целое число между границами, например: 7

2. Проверка некорректных значений (негативные тесты)

  • Значения сразу за границами:
    • Ниже границы: 4
    • Выше границы: 11
  • Значения далеко за границами:
    • 0, отрицательные числа (например, -1)
    • Большие числа (например, 999)
  • Дробные числа на границах и внутри:
    • 4.9, 5.1, 9.9, 10.1
  • Нечисловые и специальные значения:
    • Пустая строка ""
    • Текст: "abc"
    • null, undefined
    • Символы: "#"

Пример кода на Python

def is_in_interval(value):
    """Проверяет, входит ли значение в интервал [5, 10]."""
    return isinstance(value, (int, float)) and 5 <= value <= 10

# Позитивные проверки
assert is_in_interval(5) == True   # Нижняя граница
assert is_in_interval(10) == True  # Верхняя граница
assert is_in_interval(7) == True   # Внутреннее значение

# Негативные проверки
assert is_in_interval(4) == False   # Ниже границы
assert is_in_interval(11) == False  # Выше границы
assert is_in_interval(5.5) == True  # Дробное внутри
assert is_in_interval(4.9) == False # Дробное снаружи
assert is_in_interval("8") == False # Строка, а не число