无法运行多个规范方案

时间:2014-07-08 20:25:26

标签: ruby-on-rails postgresql ruby-on-rails-4 rspec capybara

我的Capybara规格出了问题。问题是当我运行带有多个场景的规范时它会崩溃 - 评论这两种场景中的任何一种都会导致测试通过。错误说在数据库中不能创建具有相同ID的另一条记录(我必须创建此对象,作为测试种子数据,具有专门设置的ID)。但是,此对象在规范开头的background子句中创建一次。 有没有人知道,为什么会出现这个错误?更重要的是,在第二种情况下可能没有任何东西(反之亦然),测试也不会通过。只是不会在运行中通过第二个场景。

规范的结构:

feature "..." do
  given(...){...}

  background do
    ...
    FactoryGirl.create(:my_object, id: 17)
    ...
    ...logging into system
  end

  scenario "first" do
    ...
  end


  scenario "second" do
    ...
  end

end

1 个答案:

答案 0 :(得分:0)

转换

 background do
    ...
    FactoryGirl.create(:my_object, id: 17)
    ...
    ...logging into system
  end

要--------------

before(:all) do
    ...
    FactoryGirl.create(:my_object, id: 17)
    ...
    ...logging into system
  end