Ответ
В ситуации полного отсутствия формальных требований я строю тестовые сценарии на основе комбинации следующих источников и принципов:
Ключевые подходы:
- Сравнительный анализ (Competitive Analysis): Тестирование и изучение поведения прямых аналогов или похожих продуктов для формирования гипотез об ожидаемом функционале.
- Отраслевые стандарты и нормативы:
- WCAG — для проверки доступности веб-интерфейсов.
- ISO 25010 — как модель качества программного обеспечения.
- RFC-стандарты — для сетевых протоколов.
- Основные принципы UX/UI: Проверка на соответствие интуитивно понятным паттернам (логичность потока, ясность сообщений об ошибках, консистентность).
- Прямая коммуникация: Инициативное общение с заказчиком или продукт-менеджером для уточнения бизнес-целей и ожиданий.
- Исследование существующей системы: Если это доработка, тщательно анализирую текущее поведение (reverse engineering).
Почему это работает: Такой подход смещает фокус с проверки «как должно быть по документу» на исследование «как система ведет себя сейчас» и «как это соотносится с общепринятыми нормами».
Пример: Эвристическое тестирование формы логина
# Псевдокод/логика проверок для формы входа без требований
def explore_login_form(page):
"""Исследовательское тестирование формы входа на основе эвристик."""
findings = []
# Эвристика 1: Наличие обязательных полей
if not page.has_field("username"):
findings.append("Отсутствует поле для имени пользователя/email")
if not page.has_field("password"):
findings.append("Отсутствует поле для пароля")
# Эвристика 2: Безопасность (пароль должен маскироваться)
if not page.password_field_is_masked():
findings.append("Текст пароля отображается открыто")
# Эвристика 3: Наличие понятного действия
if not page.has_button(["Login", "Sign In", "Войти"]):
findings.append("Отсутствует четко обозначенная кнопка отправки формы")
# Эвристика 4: Базовая валидация ввода
page.fill("username", "invalid-email")
page.submit()
if not page.shows_validation_error():
findings.append("Отсутствует валидация некорректного формата логина")
return findings
Результатом такого исследования становится де-факто набор требований, который можно задокументировать и согласовать.