首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >rSpec与Shoulda混淆

rSpec与Shoulda混淆
EN

Stack Overflow用户
提问于 2013-08-13 15:27:40
回答 2查看 81关注 0票数 0

我开始阅读一本关于rSpec的书,作为我测试Rails应用程序的基本介绍。我开始写测试,比如:

代码语言:javascript
复制
it 'is valid with a name' do
  coaster = FactoryGirl.build(:coaster)
  expect(coaster).to be_valid
end

但后来有人指指Shoulda,现在可以编写如下测试:

代码语言:javascript
复制
it { should validate_presence_of(:name) }

注意:我意识到张贴的两个测试并不相同,只是每种类型的例子而已。

我需要澄清的是,Shoulda是rSpec的替代品,还是Shoulda对它的评论?

其他人会走哪条路呢?总体来说,Shoulda测试似乎更简单、更短。

基本上,任何想法和评论都是有帮助的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-13 15:37:40

应该只是在RSpec中添加额外的匹配器。

http://rubydoc.info/github/thoughtbot/shoulda-matchers/master/frames

票数 1
EN

Stack Overflow用户

发布于 2013-08-13 17:04:23

BDD风格是通过expect公开的,expect是更自然的语言断言。首先,请注意expect require只是对expect值的引用,而使用应要求时则执行该值。应当样式扩展了每个对象,该属性在ruby中称为猴子补丁。下面是一个很好的文章,它解释并比较了这两种断言机制。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18213205

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档