我试图决定如果我用Cuke4Nuke或SpecFlow.什么是专业/弊的每个?意见,这是更好的和为什么。

谢谢!

有帮助吗?

解决方案

(我可能是有偏见,因为我参与SpecFlow,但在这里我的想法...)

Cuke4Nuke是非常接近黄瓜。这个承诺的一个很大的优点:

  • 兼容性
  • 获得新的功能,从参当参发展(至少在理论上,但语言支助是一个例子本)
  • 作为一个真正的一部分的黄瓜的社区和生态系统黄瓜

然而这也有一些潜在的缺点:

  • 红宝石是必要的
  • 由于更多的基础设施(红宝石的线协议、命令行一体化...)参与,复杂的整体的解决方案上升,以及机会的某些链的失败上升
  • 调试是可能的,但一点 麻烦的
  • 运行情况上dos命令行只是普通的丑陋了,我还是有问题的一些字符的(德国Umlaute).的 解决方案 从黄瓜有没有不是工作cuke4nuke在我的情况。
  • 融入你的连续生成的东西,你必须作出自己

SpecFlow是一个单独的项目从黄瓜。它试图尽可能接近黄瓜成为可能,但有与会差距。有计划地使用相同的分析器作为黄瓜,提高兼容性的语言水平。

SpecFlow试图提供以下优点:

  • 一个纯洁。净解决(因此没有安装的红宝石是必要的和宝石不涉及在运行时)
  • 有一个基本的一体化与visual studio(和有计划地发展这个)
  • 情况基本上都是UnitTests和可以运用现有的基础设施(呢?跑步,ReSharper,Visual Studio MSTest一体化...)
  • 方案和步骤是很容易可调试出的visual studio(就设置一个断点)
  • 融入你的连续建立应该是一件轻而易举的,由于基础设施的运行单位测试的肯定是最有已

作为缺点SpecFlow我看到目前为:

  • 它不支持多种语言作为黄瓜
  • 目前有一种"代码代"步骤的参与。这是透明的时使用visual studio,并有一个命令行做到这一点没有visual studio,但很多人不喜欢代码生成。
  • 目前没有明确命令行亚军SpecFlow.但是你可以用你的单元测试commandline亚军。
  • SpecFlow取决于一个单元的测试框架,并且目前只有关和MSTest支持
  • 报告在SpecFlow是不是很复杂的。黄瓜,并提供更多的选择,但是我不知道如果他们都是在cuke4nuke...

其他提示

jbandi给出了很好的总结。我回答几乎相同的方式的问题(与偏见相反的声明,当然)。

有Cuke4Nuke的目标是在.NET满黄瓜兼容性,同时复制少黄瓜代码越好。因此,一些取舍,你强调,e.g。 Ruby的依赖,是固有的工具。其他人一样,在语言和格式支持错误和有限的调试支持,是暂时的问题,并会自行消失与将来的版本。

我碰到的一些问题,其中Cuke4Nuke并不很喜欢黄瓜工作。但正如我在英国工作主要是,我没有看到我的正常的工作语言有关的问题。我希望能重现步骤所有这些问题,所以我可以解决这些问题。 (请邮寄到他们的Cuke4Nuke问题列表,不是在这里。)

另一个严重偏向观点:尝试 StoryQ :)

StoryQ测试实际上是代码,让您获得更好的重构/ IDE的支持,它嵌入现有的单元测试运行中,所以CI是一件轻而易举的事。

这可能是首选项,你是否宁愿检查以纯文本的功能或编译代码的问题。但对于我们,我们发现,这是真的很高兴能够重新命名的叙事方法,并已全部故事自我更新。

有实际上是一个GUI提供了将纯文本场景转换成StoryQ代码你,如果你已经有了明文的情况下投资,或者如果你想给键盘来的商务人士。它甚至有智能感知的简单形式!

给它一个去,如果你想要一个超轻量级的切入点BDD:)

另一个偏置响应: StorEvil 吃所有其他.NET BDD工具

<强>优点:StorEvil具有其自己的命令行转轮,具有良好的报告(使用Spark视图引擎),并且具有最好plaintext-> C#翻译和执行引擎

此外,它具有比任何其它溶液100%以上恶

<强>缺点:StorEvil不完全支持其他的人类语言(英语除外)。 StorEvil的Visual Studio集成尚未像你一样的其他工具。 StorEvil会喝的所有啤酒在冰箱里,如果你不留意就可以了。

我从理查德明白,他打算终止Cuke4Nuke并支持移动一些Cuk4Nuke的特征分成SpecFlow。所以,现在的明确答复是SpecFlow。

我开始与Cuke4Nuke但由于叛逃到SpecFlow(对不起Richard;-)

主要原因是为我做这一过渡是:

  • SpecFlow有漂亮的VS2010一体化的语法突出的特点。有一个Cuke4VS项目,提供类似的,但它并不还没有VS2010支持(或不当我最后看起来,无论如何,这是相当近期)
  • 我找到了调试测试SpecFlow可以更容易(不要问我到阐述,它似乎是那样...;-)
  • Cuke4Nuke需要红宝石.我很确定,但大多数C#开我知道受到惊吓的任何非MS产品、宝石尤其如此。

有一些问题与Specflow/东西我更喜欢中的参/Cuke4Nuke的世界:

  • Specflow的文件是相当精简版的-你会必须准备努力工作,以收集的信息黄瓜源和忒一点它们如何适用于Specflow.说我和其他几个人已设计关于加强该文件,以便可以改善在今后几个月。
  • 我更喜欢的运行经验参/Cuke4Nuke测试的命令行与其产出的方案颜色编码的根据的状况(我知道有人以上认为这是一个负,所以我想这取决于你是否是个命令行什么样的人...)
  • 黄瓜社会更大,有更多的活动似乎其(可能的)转换为更多的人来帮助你。

所有的一切都有可能改善我们的方式编写的软件。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top