为什么黄瓜甚至其支持的BDD工具都需要specflow

Gop*_*l A 7 bdd cucumber specflow

我试图找到答案为什么在黄瓜甚至黄瓜是单独的BDD工具需要specflow.

我们应该在.NET项目中直接使用黄瓜

Sam*_*der 8

Cucumber是一个应用程序,它读取Gherkin语法纯文本规范文件并运行ruby文件来执行这些规范.

Specflow是.net的黄瓜"端口",它也使用Gherkin语法文件,但将它们连接到.net代码.如果你看黄瓜文档,它说明在.net中使用黄瓜,你可以通过SpecFlow来实现.

我不认为你可以在.net中运行黄瓜,除非你想用铁红宝石......


小智 7

Cucumber 主要是为 Ruby 项目编写的,并在 Ruby 中执行。

存在其他语言的端口。Cucumber-JVM 在 Java 中执行,SpecFlow 在 .NET 中执行。如果您想在 .NET 中编写您的测试框架,那么您应该使用 SpecFlow。

如果您正在编写验收测试(这正是 Cucumber 的真正设计目的),那么您的框架没有理由必须使用与您的开发人员编写的语言相同的语言。您的框架应该在您的应用程序的单独存储库中,并且独立部署。您可以使用 ruby​​ 框架测试 PHP 网站,使用 Cucumber-JVM 框架测试 Rails 网站.. 只要您的部署过程可以处理它并且您能胜任该语言,这并不重要。