对于一个新的应用程序,我想开始涉猎BDD,并且试图在使用RSpec还是Thoughtbot的Shoulda之间做出选择。我喜欢Shoulda使用的宏,并且它似乎并没有重新发明Ruby/Rails进行测试的方式,而是仅提供了一个附加组件,这一事实使我很喜欢。另一方面,这些宏似乎有点“神奇”,而不是明确说明您要测试的内容(但是我从摸索中知道,写很多“如果没有xxx的话,它们应该是无效的”,这很烦人)一个模型)。坦白说,我发现编写模型的规范/测试非常简单而且几乎很无聊,但是我发现编写 Controller 的规范/测试非常困难,因为我不确定要测试的内容或编写方式。

我对模拟和 stub 这个问题很疑惑,因为我认为它们给了您错误的假设(因为您可以告诉它以为它拥有所需的任何数据或假装调用了方法X),而且我知道RSpec会增加两者都使用。我喜欢RSPec生成的文档,但是我正在创建一个销售应用程序,而不是提供给客户,因此漂亮的文档并没有那么有用。我喜欢 cucumber ,但似乎有点过分了(是的,我知道它可以与Shoulda一起使用)。

此时,Rails社区是支持RSpec还是Shoulda?

最佳答案

Rails社区支持RSpec和Shoulda。这取决于开发人员。
如果您更喜欢Shoulda,请使用它。
如果您更喜欢RSpec,请使用它;)

他们都是目标相似的不同图书馆。这并不意味着每个开发人员都必须支持或反对它。这仅意味着您可以使用它们中的任何一个。

您可以根据自己的喜好(以及您与之合作的其他开发人员)做出选择。

关于ruby-on-rails - BDD on Rails-社区是否更应该成为Shoulda或RSpec的支持者?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1588463/

10-10 08:11