Как подходить к тестированию, если отсутствует документация?

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

Ответ

Отсутствие документации требует применения исследовательского (exploratory) подхода и активного взаимодействия с командой.

Пошаговая стратегия:

  1. Исследовательское тестирование:

    • Активное изучение приложения для понимания его функциональности, построения ментальной карты и выявления граничных условий.
    • Пример сценария: "Что произойдет, если отправить форму с пустым обязательным полем?"
      # Пример логики теста, основанного на наблюдениях
      def test_empty_required_field():
      open_form()
      fill_field("name", "Valid Name")
      leave_field("email", "")  # Оставляем обязательное поле пустым
      submit_form()
      # Наблюдаем результат: сообщение об ошибке? игнорирование? падение?
      assert error_message_is_displayed("Email is required")
  2. Анализ существующих артефактов:

    • Исходный код: Просмотр кода (если доступен) для понимания логики валидации, граничных значений.
    • Логи и сетевые запросы: Анализ через DevTools или системные логи для выявления точек взаимодействия и форматов данных.
    • База данных/API: Изучение схемы данных может подсказать бизнес-правила.
  3. Коммуникация с командой:

    • Разработчики: Главный источник информации об ожидаемом поведении системы.
    • Продукт-менеджер/Аналитик: Помогут понять бизнес-контекст и цели фичи.
  4. Создание документации по ходу тестирования:

    • Фиксируйте все найденные сценарии, предположения и принятые решения в виде чек-листов, mind maps или тестовой документации (например, в Confluence). Это станет основой для будущих регрессионных тестов.
  5. Использование аналогий: Если система имеет публичный аналог или предыдущую версию, используйте их поведение как референс (с осторожностью).

Ключевой навык: Умение быстро обучаться, задавать правильные вопросы и гибко адаптировать тестовые сценарии.