我正在为rails应用程序上的ruby寻找一个简单的英语BDD工具。我已经使用了Cucumber,我非常喜欢它。
我试图找出是否有黄瓜的替代品,以及它们与黄瓜相比有多好。
我知道在SO中有很多问题。但它们确实很旧,当时大多数其他工具都不存在。
答案 0 :(得分:3)
如果测试的一些重要读者,比如说客户,想要阅读测试并且他们不知道编程,那么就像我所知,没有像Cucumber那样用纯文本编写测试的好方法。
但黄瓜带来了成本。您需要编写纯文本并编写代码来解析它。程序员可以直接读取测试代码而无需纯文本作为媒体。如果客户不需要阅读测试而只需要阅读故事,那么Cucumber就没有必要了。
所以有一个Steak gem,它使用Ruby和Cucumber之类的语法来编写测试,直接测试,没有纯文本来解析。
但后来,这颗宝石已经过时,因为Capybara已经吃掉了牛排。 Capybara现在具有与feature
相同的BBD语法(在Rspec中等于describe
),scenario
等于it
,依此类推。
所以我的结论是,如果不需要为开发人员之外的sombody准备纯文本阅读,请使用Capybara,简单明了。否则仍然使用黄瓜。
答案 1 :(得分:1)
过去4年我一直在使用黄瓜,但现在我要转移到Spinach。 就像小黄瓜一样,它就像黄瓜一样(简单的英语情节),但是Ruby没有任何疯狂的正则表达式。显然你可以使用Capybara,Rspec,Minitest。
这是更清洁的解决方案,更容易保持最新的BDD良好做法。
现在我在同一个项目中使用两个框架(Cucumber,Spinach),直到我将所有功能都移到Spinach。