Cuke4Nuke или SpecFlow?

Я пытаюсь решить, должен ли я использовать Cuke4Nuke или SpecFlow. Каковы про / недостатки каждого? Мнения, на которых лучше и почему.

Спасибо!

38
задан LondonBasedEngineer 8 December 2011 в 21:53
поделиться

4 ответа

Я думаю, что это не должно быть лишь вопросами, я знаю несколько парней, которые великолепны, когда вы их интервью, но однажды они доберутся до настоящей вещи, что они слишком много перфекциониста, я бы сказал, что не в состоянии кодировать задачу несчастнее.

Я когда-то взял интервью, и я вроде понравился подход, в котором первый работодатель дал мне техническую анкету, чтобы заполнить 30 минут. Если кто-то успешен, то он будет призван за 1 час собеседования, охватывающую личности, и вопросы нахождения персонажей плюс технические жаргонов.

Тогда меня попросили разработать три страницы веб-приложения в течение 6 часов. Ограничения наложения в приложении было умного охватывающем основным аспектом развития приложений, таких как небольшая ERD, дизайн Saydd, консистенция пользовательского интерфейса, контролирует конкретные проблемы, такие как использование радиопередачи в GRIDVIEW и получения и отображения типов изображений из DB на веб-странице, один алгоритм, Безопасность, шифрование, хеширование, представление данных и манипуляция.

Затем на следующий день они сопровождали 30-минутную дискуссию на разработанном приложении, охватывающих зоны узкой местности и улучшению дизайна и использованных алгоритмов. И 1 час необязательного теста для улучшения вашего алгоритма, разработанного на предыдущем шаге с определенным условием.

Так что это заняло самое простое количество времени, но таким образом, вы можете убедиться, что человек, которого вы нанимаете, знает, по крайней мере, эти концепции, которые необходимы для хорошего разработчика.

-121--573796-

(Я мог бы быть предвзятым, потому что я связан с Fexflow, но здесь мои мысли ...)

CUKE4NUKE очень близко к огурцу. Это обещает много преимуществ:

  • Совместимость
  • Совместимость
  • Получение новых функций от огурца, когда огурца развивается (по крайней мере, в теории, но языковая поддержка является примером для этого)
  • , являющаяся реальной частью сообщества огурца и Экосистема огурца

Однако это приходит также с некоторыми потенциальными недостатками:

  • Ruby - это необходимость
  • , поскольку в целом инфраструктуры (Ruby, протокол, протокол командной линии ...) участвует, сложность целого Раствор поднимается, и шансы на то, что что-то в цепочке не поднимается
  • отладки возможна, но немного хлопот
  • работающих сценариев на DOS-командной линии просто уродливая, и у меня все еще есть проблемы с некоторыми символы (немецкий умлаут). Решения от огурца не работали на CUKE4NUKE в моем случае.
  • Интеграция с вашей непрерывной сборкой - это то, что вы должны работать для себя

SEPFLOW - это отдельный проект от огурца. Он пытается быть как можно ближе к огурцу, но есть и будут пробелы. Есть планы использовать один и тот же парсер, что и огурец, чтобы улучшить совместимость на уровне языка.

FESTFLOW пытается предложить следующие преимущества:

  • PURE .NET-раствор (поэтому не требуется установка Ruby, и Ruby не участвует во время выполнения)
  • Существует базовая интеграция с VisualStudio (и есть планы Эволюция в этом)
  • Сценарии в основном являются неизменяемыми и могут быть запущены с вашей существующей инфраструктурой (Nunit.runners, Resharper, Visualstudio MSTest Integration ...)
  • Сценарии и шаги легко отладки из VisualStudio (просто установите точку останова )
  • Интеграция в вашей непрерывной сборке должна быть ветером, поскольку инфраструктура для запуска единицы-тесты, безусловно, в настоящее время уже есть

как недостатки специфики, которую я вижу в настоящее время:

  • Это не поддерживает как огурец.
  • В настоящее время участвует шаг «поколение кода». Это прозрачно при использовании VisualStudio, и существует командная линия для этого без VisualStudio, но многие люди не любят поколение кода.
  • В настоящее время нет явной командировки Runner Runner для FexFlow. Однако вы можете использовать свой блок-тест в командной строке.
  • SPECTFLOW зависит от структуры устройства-тестирования, а в настоящее время поддерживается только NUNIT и MSTEST
  • , сообщая в Fexflow не очень сложно. Огурец делает больше вариантов, однако я не знаю, все ли они доступны в Cuke4nuke ...
59
ответ дан 27 November 2019 в 03:13
поделиться

JBandi дает хорошее резюме. Я отвечаю на вопрос о том же таким же способе (с противоположным отцизией для смещения, конечно).

Цель для CUKE4NUKE является полной совместимостью огурца в .NET при дублировании как можно меньше огурца. Поэтому некоторые из компромиссов вы подчеркивали - например. Зависимость Рубина - присущи инструменту. Другие, такие как ошибки в языке и поддержке языка и форматированной темы и ограниченная поддержка отладки, являются временными проблемами и будут уходить с будущими версиями.

Я столкнулся с несколькими проблемами, где CUKE4NUKE не работает совсем как огурец. Но, как я работаю в первую очередь на английском языке, я не вижу проблемы, связанные с языком в моей обычной работе. Я приветствую шаги, чтобы воспроизвести любую из этих вопросов, поэтому я могу их исправить. (Пожалуйста, опубликуйте им Список проблем CUKE4NUKE , а не здесь.)

11
ответ дан 27 November 2019 в 03:13
поделиться

Другое сильно предвзятое мнение: Попробуйте StoryQ :)

StoryQ-тесты на самом деле являются кодом, так что вы получаете гораздо лучший рефакторинг / поддержку IDE, и он встраивается в ваш существующий юнит-тест руннер, так что CI - это ветер.

Вероятно, это вопрос предпочтения, хотите ли вы проверить возможности простого текста или компилируемого кода. Но для нас было очень приятно иметь возможность переименовывать методы повествования и обновлять все истории самостоятельно.

На самом деле существует графический интерфейс, который преобразует сценарии из простого текста в StoryQ-код для вас, если у вас уже есть инвестиции в сценарии из простого текста, или если вы хотите дать клавиатуру вашим деловым людям. У него даже есть простая форма интеллекта!

Попробуйте, если вам нужна ультралегкая точка входа в BDD :)

.
11
ответ дан 27 November 2019 в 03:13
поделиться

Другой предвзятый ответ: StorEvil съедает все остальное.Чистые инструменты BDD.

Преимущества : StorEvil имеет собственное средство запуска командной строки, имеет хорошие отчеты (с использованием механизма представления Spark) и имеет лучший механизм перевода и выполнения открытого текста-> C #.

Кроме того, в нем на 100% больше Зла, чем в любом другом решении.

Недостатки : StorEvil не полностью поддерживает другие человеческие языки (кроме английского). Интеграция StorEvil с Visual Studio пока не так хороша, как другие инструменты. StorEvil выпьет все пиво из холодильника, если вы не будете за ним следить.

7
ответ дан 27 November 2019 в 03:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: