0

我有 RSpec 测试,在一个描述块中,我使用 FactoryGirl 在 (:each) 测试之前创建一个模型。对于我的描述块中的一项测试,我想创建一个具有不同属性的工厂。任何想法如何最好地完成?

4

1 回答 1

1

您可以在 before(:each) 中创建对象并更改测试中需要它的同一对象的属性

describe "test" do
  before(:each) do
   @model = FactoryGirl.create(:model)
  end

  it "should do something" do
    @model.update_attribute(:attribute, :value)
  end
end

另一种方式:

   describe "test" do
      before(:each) do
       @model = FactoryGirl.create(:model)
      end

      it "should do something" do
        model1 = FactoryGirl.create(:model, :attribute1 => "value")
      end
    end
于 2013-09-04T22:34:05.090 回答