我试图学习如何测试与Rspec。测试存在和belongs_to与Rspec
目前,我有一个项目类规格:
require 'spec_helper'
describe Item do
it { should belong_to :list }
before(:each) do
@item = FactoryGirl.create(:item)
end
subject { @item }
it { should respond_to :name }
it { should validate_presence_of :name }
end
我有几个关于这个问题,虽然。
是it { should validate_presence_of :name }
一样写:
describe "when name is not present" do
before { @item.name = "" }
it { should_not be_valid }
end
或者是两者之间有一个关键的区别?
我也想知道it { should belong_to :list }
是否值得在规范中编写,或者如果有更好的方法。我可以做@item = FactoryGirl.build(:item)
或FactoryGirl.create(:item)
。是否创建将项目保存到测试数据库并且不生成?或者我在这里困惑。我应该什么时候使用哪个?
谢谢。
谢谢。我的确在使用shoulda-matchers。我会用短表格! :) – cabaret 2012-08-12 17:56:14