Использование SpecFlow для сквозного регрессионного тестирования

Мы используем BDD и SpecFlow для стимулирования нашей разработки (ATDD ).

Наша команда QA хотела бы определить свои собственные «сквозные регрессионные тесты» (в Gherkin / SpecFlow) и повторно использовать шаги, которые мы уже определили.

(Обратите внимание - я знаю, что это не лучший пример, но он должен предоставить достаточно подробностей)

Тест может включать ..

  1. Войти
  2. Искать продукт
  3. Выбрать продукт купить
  4. Создать заказ
  5. Выбрать вариант доставки.
  6. Отправить заказ.
  7. Отменить заказ.

Это предполагает такой сценарий, как ..

Учитывая, что я вошел в систему
Когда я ищу продукт
И я выбираю продукт для покупки
И я создаю заказ
И я выбираю вариант доставки
И я отправляю заказ
И отменяю заказ
Потом ??!!

Что явно неверно, поскольку мы не проверяем вывод на каждом шаге.

Таким образом, этот может быть разрешен как последовательность сценариев:

Сценарий 1:
Учитывая, что я вошел в систему
Когда я ищу продукт
Затем я вижу список продуктов

Сценарий 2:
Когда я выбираю продукт для покупки
Затем я могу создать заказ

Сценарий 3:
Когда я создаю заказ
И я выбираю вариант доставки
Затем я могу отправить заказ

и т.д. и т.д.

Основная проблема заключается в том, что, похоже, нет способа указать порядок / последовательность, в которой выполняются сценарии (характеристика nUnit?). Поскольку между сценариями существуют зависимости (для них не задана известная начальная точка), они должны выполняться последовательно.

У меня следующие вопросы:

a) Мы пытаемся вставить квадратный колышек в круглое отверстие ?!

б) Кто-нибудь знает, есть ли способ использовать SpecFlow / Gherkin таким образом?

в) Или кто-нибудь знает, какие есть альтернативы?

Большое спасибо!

9
задан Mark Chidlow 13 December 2011 в 12:36
поделиться