首页 文章

.NET的黄瓜替代品

提问于
浏览
72

快速的一个,有没有人遇到类似于Ruby的黄瓜(一个人类可读的DSL,用于定义可以测试的用例故事)在.NET领域?

8 回答

  • 1

    您还应该查看SpecFlow,这是一个使用.NET进行BDD的开源项目 .

    SpecFlow使用与黄瓜相同的定义格式(Gherkin),但您可以在.NET中编写步骤定义 . 它基本上从您的功能文件生成单元测试类(NUnit,MsTest,xUnit等),因此您可以使用相同的单元测试执行引擎,就像使用实际单元测试一样 . 这样,将BDD功能测试集成到集成构建中也更容易 .

    在最近的版本中,SpecFlow具有Visual Studio 2010的语法着色功能,并支持Silverlight和Mono / MonoDevelop .

  • 2

    当然 . 它被称为Cucumber . 有一个例子可以说明Cucumber examples directory中的.NET代码以及黄瓜维基上的文档.NETMono .

  • 79

    在这个领域似乎有3种可能性:

    • 使用Cucumber和IronRuby . Here's a blog关于开始这个的一些步骤 . 缺点似乎是表现 . 我已经阅读了说_1198387_的帐户,还有其他人说它只是really slow to spin up . 尽管IronRuby仍处于积极发展阶段,但这还远未定论 .

    • 使用Cuke4Nuke . 我听过这个产品推荐了几次 . 它实际上使用常规的Ruby和Cucumber,但是通过服务器运行.NET代码 . 幸运的是,所有这些复杂功能在使用时都是透明的 . Cuke4Nuke is no longer under active development.

    • 使用SpecFlow . 这是Cucumber的.NET端口 . 因此,它可能不会让所有的Cucumber都必须安装Ruby .

    目前看来哪些是最佳选择似乎并不清楚 . 就个人而言,我打算从Cuke4Nuke开始 .

  • 34

    我写了一篇博客文章,详细介绍了我使用IronRuby运行Cucumber的过程:http://hotgazpacho.org/2009/06/cucumber-and-ironruby-it-runs/

  • 3

    BDD in plain English可以使用Concordion.NET完成 . 预期行为的规范是用HTML编写的 .

    任何结构的任何句子都可用于Concordion.NET测试 . 例如,没有必要写一个句子,例如“给定一个余额为10美元的银行账户,当启动提款20美元时,交易失败” . 相反,可以使用任何类型的句子,例如“如果帐户包含的余额不足10美元,则20美元的交易失败” .

    Concordion.NET测试在NUnit的帮助下执行,NUnit集成在许多不同的环境中:https://github.com/concordion/concordion-net

  • 19

    StoryTeller有点相关,即使它不是严格的BDD . 它似乎支持一种不同类型的测试,但是用.NET编写 . 阅读更多关于Jeremy Millers blog

  • 2

    还有StoryQ . 这是一个针对用户故事的开发重点方法,可以报告客户端 . http://storyq.codeplex.com

    StoryQ是一个用于.NET 3.5的可移植(单dll)嵌入式BDD框架 . 它在您现有的测试运行器中运行,有助于生成人性化的测试输出(html或文本) . StoryQ的流畅界面为您的BDD语法增加了强大的输入,智能感知和文档 .

  • 3

    我有一篇文章展示如何在http://blog.webintellix.com/2009/10/how-to-use-cucumber-with-net-and-c.html使用Cucumber与C# . 使用IronRuby 1.0,运行时间有了显着改善 .

相关问题