Что такое Critical Path (критический путь) в тестировании?

«Что такое Critical Path (критический путь) в тестировании?» — вопрос из категории Управление тестированием, который задают на 22% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Critical Path (Критический путь) — это минимальный набор ключевых пользовательских сценариев, которые обеспечивают основную бизнес-ценность приложения. Отказ любого шага на этом пути делает основную функцию системы недоступной или бесполезной для пользователя.

Цель тестирования критического пути: убедиться, что самое важное для пользователя и бизнеса работает стабильно, особенно после развертывания новой версии (smoke-тестирование).

Пример для e-commerce приложения:

  1. Поиск товара по каталогу.
  2. Просмотр карточки товара.
  3. Добавление товара в корзину.
  4. Оформление заказа (переход в корзину, ввод данных доставки).
  5. Выбор способа и завершение оплаты.
  6. Просмотр подтверждения заказа.

Практическое применение:

  • Приоритизация: Тесты критического пути выполняются в первую очередь.
  • Smoke/Sanity-тесты: Часто формируют основу для этих проверок после сборки.
  • Мониторинг: Ключевые шаги пути часто мониторятся в production.

Псевдокод теста:

def test_critical_path_ecommerce():
    user.login(credentials)
    user.search_product("wireless headphones")
    user.select_first_product()
    user.add_to_cart()
    user.proceed_to_checkout()
    user.fill_shipping_details()
    user.select_payment_method("card")
    order_id = user.confirm_purchase()
    assert order_id is not None, "Purchase failed on critical path"
    assert user.order_is_visible(order_id), "Order confirmation failed"