Как применять классы эквивалентности при тест-дизайне?

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

Ответ

Классы эквивалентности (Equivalence Partitioning) — это техника тест-дизайна для группировки входных данных, которые должны обрабатываться системой одинаково.

Процесс применения:

  1. Анализ спецификации: определение всех возможных входных данных
  2. Разделение на классы:
    • Валидные классы (ожидаемый результат — успех)
    • Невалидные классы (ожидаемый результат — ошибка)
  3. Выбор тестовых значений: по 1-2 представителя из каждого класса

Пример для поля "Возраст пользователя" (допустимо: 18-100):

# Валидные классы эквивалентности
valid_values = [18, 50, 100]  # нижняя граница, середина, верхняя граница

# Невалидные классы эквивалентности
invalid_values = [
    17,      # ниже допустимого диапазона
    101,     # выше допустимого диапазона
    -5,      # отрицательное число
    "abc",   # нечисловое значение
    None,    # пустое значение
]

Для сложных полей (например, пароль) учитывайте комбинации классов:

  • Длина пароля (минимум 8 символов)
  • Наличие заглавных букв
  • Наличие цифр
  • Наличие специальных символов

Преимущества метода:

  • Сокращает количество тест-кейсов
  • Обеспечивает полное покрытие входных данных
  • Помогает выявить пограничные условия