工厂女孩的问题 - 持久数据(Rails)

时间:2012-11-30 16:23:11

标签: ruby-on-rails integration-testing factory-bot

我最近在我的应用程序中开始使用FactoryGirl而不是Fixtures。 下面是我编写的一个规范,用于测试使用factorygirl保存的数据是否出现在单独的页面中

describe "Tasks" do
  describe "GET /Ajax add", :focus do
    it "checks ajax js", :js => true do
      task = FactoryGirl.create(:task, :name => "writing test task")
      visit "/list"
    end
  end
end
页面/list中的

我已编写代码来检索tasks(Task model)中的所有数据。

当我通过启动服务器运行页面时,我可以看到输出,但是在运行测试时,它总是显示空页。

这是因为FactoryGirl在使用后删除了所有数据吗?或者,即使我在测试中访问多个页面,我该怎么做才能保留数据?

2 个答案:

答案 0 :(得分:1)

1)您使用的是DatabaseCleaner吗?看看你的test_helper,看看你是否在做任何清理数据库的事情

2)检查任务的返回值,看它是否实际成功创建。

答案 1 :(得分:0)

我有类似的问题,使用Fabricator(FactoryGirl替代品)不会持续到我的Capybara会话。 plataformatec的人为此写了一个解决方案。 http://blog.plataformatec.com.br/2011/12/three-tips-to-improve-the-performance-of-your-test-suite/