每个人的利弊是什么?对此的意见更好,为什么。
谢谢!
Cuke4Nuke非常接近黄瓜。
这有很多优点:
>兼容性
>当Cucumber发展时,从Cucumber获取新特性(至少在理论上,但语言支持就是这样的例子)
>作为黄瓜社区和黄瓜生态系统的真正部分
然而,这也具有一些潜在的缺点:
> Ruby是必要的
>由于涉及更多的基础设施(Ruby,Wire-Protocol,命令行集成…),整个解决方案的复杂性增加,并且链中的某些东西有可能失败
>调试是可能的,但有点hassle
> dos命令行上的运行方案只是简单的丑陋,我仍然有一些字符的问题(德语Umlaute)。在我的情况下,来自Cucumber的solutions没有为cuke4nuke工作。
>与您的持续构建集成是一个你必须为自己做的
SpecFlow是一个单独的项目从黄瓜。它试图尽可能接近黄瓜,但有和将会有差距。有计划使用与Cucumber相同的解析器,以提高语言级别的兼容性。
SpecFlow试图提供以下优点:
>纯.NET解决方案(因此不需要安装Ruby,在运行时不涉及Ruby)
>有一个与VisualStudio的基本集成(并有计划发展这一点)
>场景基本上是单元测试,可以与您现有的基础架构(NUnit.Runners,ReSharper,VisualStudio MSTest集成…)
>场景和步骤可以很容易地从VisualStudio调试(只是设置断点)
>在连续构建中集成应该是一件轻而易举的事情,因为运行单元测试的基础设施肯定已经存在
作为SpecFlow的缺点我目前看到:
>它不支持与黄瓜一样多的语言>目前有一个“代码生成”步骤涉及。这在使用VisualStudio时是透明的,有没有VisualStudio这样做的命令行,但很多人不喜欢代码生成。>目前没有明确的SpecFlow命令行运行程序。但是,您可以使用单位测试命令行运行程序。> SpecFlow取决于单元测试框架,目前只支持NUnit和MSTest>在SpecFlow中的报告还不是很复杂。黄瓜不提供更多的选择,但我不知道他们是否都在cuke4nuke …