我开始阅读一本关于rSpec的书,作为我测试Rails应用程序的基本介绍。我开始写测试,比如:
it 'is valid with a name' do
coaster = FactoryGirl.build(:coaster)
expect(coaster).to be_valid
end但后来有人指指Shoulda,现在可以编写如下测试:
it { should validate_presence_of(:name) }注意:我意识到张贴的两个测试并不相同,只是每种类型的例子而已。
我需要澄清的是,Shoulda是rSpec的替代品,还是Shoulda对它的评论?
其他人会走哪条路呢?总体来说,Shoulda测试似乎更简单、更短。
基本上,任何想法和评论都是有帮助的。
发布于 2013-08-13 15:37:40
应该只是在RSpec中添加额外的匹配器。
http://rubydoc.info/github/thoughtbot/shoulda-matchers/master/frames
发布于 2013-08-13 17:04:23
BDD风格是通过expect公开的,expect是更自然的语言断言。首先,请注意expect require只是对expect值的引用,而使用应要求时则执行该值。应当样式扩展了每个对象,该属性在ruby中称为猴子补丁。下面是一个很好的文章,它解释并比较了这两种断言机制。
https://stackoverflow.com/questions/18213205
复制相似问题