Подтвердить что ты не робот

MSpec и SpecFlow, когда использовать какой? Каковы преимущества/недостатки?

Я пытаюсь начать работу с BDD и нашел сообщения в блоге о просмотре MSpec и SpecFlow. В настоящее время я не совсем уверен, когда буду использовать, какие и каковы преимущества/недостатки обеих фреймворков.

Посмотрев на документацию, похоже, что MSpec использует стиль спецификации контекста, тогда как SpecFlow использует стиль Given/When/Then. Я даже не против, но я хотел бы знать, есть ли какие-то подводные камни, чтобы следить за дальнейшим движением по пути, когда проект/тестовый набор растет.

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

4b9b3361

Ответ 1

Итак, я использовал оба. Мне нравится рабочий процесс mspec, потому что его легче продавать для меня, чтобы говорить с пользователями и говорить.

"При входе в систему" "Я должен вернуться на страницу, которую я просил"

Когда я работал в организациях, которые купили больше в активном сотрудничестве (читайте быстро), я использовал шаблон Given When Then. Эта организация использовалась для пользовательских историй, поэтому они использовались для более жесткого стиля спецификации. Кроме того, мы использовали более одного инструмента для подачи спецификаций. поэтому файлы функций "только текст" могут быть повторно использованы между инструментами.

В моих собственных проектах я использую SpecFlow для "снаружи" и "mspec" для внутри тестов. Если бы я должен был дать кому-то совет, было бы использовать specflow, если не технические люди пишут внешние спецификации и mspec, если разработчик пишет.

Плохие очки: Mspec - взрыв класса SpecFlow - это медленный рабочий процесс Хорошие моменты: Mspec - более естественный язык Спектр лучше для повторного использования шагов.

Суть в том, что они хорошо работают вместе.

Ответ 2

Одним из недостатков mspec является то, что вы не можете работать параллельно, а с помощью runflow runner вы можете. Это большая проблема с производительностью.