Мы используем BDD и SpecFlow для стимулирования нашей разработки (ATDD ).
Наша команда QA хотела бы определить свои собственные «сквозные регрессионные тесты» (в Gherkin / SpecFlow) и повторно использовать шаги, которые мы уже определили.
(Обратите внимание - я знаю, что это не лучший пример, но он должен предоставить достаточно подробностей)
Тест может включать ..
Это предполагает такой сценарий, как ..
Учитывая, что я вошел в систему
Когда я ищу продукт
И я выбираю продукт для покупки
И я создаю заказ
И я выбираю вариант доставки
И я отправляю заказ
И отменяю заказ
Потом ??!!
Что явно неверно, поскольку мы не проверяем вывод на каждом шаге.
Таким образом, этот может быть разрешен как последовательность сценариев:
Сценарий 1:
Учитывая, что я вошел в систему
Когда я ищу продукт
Затем я вижу список продуктов
Сценарий 2:
Когда я выбираю продукт для покупки
Затем я могу создать заказ
Сценарий 3:
Когда я создаю заказ
И я выбираю вариант доставки
Затем я могу отправить заказ
и т.д. и т.д.
Основная проблема заключается в том, что, похоже, нет способа указать порядок / последовательность, в которой выполняются сценарии (характеристика nUnit?). Поскольку между сценариями существуют зависимости (для них не задана известная начальная точка), они должны выполняться последовательно.
У меня следующие вопросы:
a) Мы пытаемся вставить квадратный колышек в круглое отверстие ?!
б) Кто-нибудь знает, есть ли способ использовать SpecFlow / Gherkin таким образом?
в) Или кто-нибудь знает, какие есть альтернативы?
Большое спасибо!