我有一個ActiveRecord類,Post。Poltergeist輸入db信息
在與水豚,RSpec的和騷靈運行我的功能規格,我創建的這兩個實例與FactoryGirl
FactoryGirl.create(:post, topic: "Blade running")
FactoryGirl.create(:post, topic: "Dreaming of electric sheep")
,我可以馬上驗證規範:
scenario "Linking to post by tag", js: true do
FactoryGirl.create(:post, topic: "Blade running")
FactoryGirl.create(:post, topic: "Dreaming of electric sheep")
Post.count # => 2
Post.all.all?(&:persisted?) # => true
visit root_path
# more stuff
end
但是,當在下一行中,我訪問我的應用程序的根路徑(指向我的帖子應用程序中的索引操作),帖子消失(以及它們的關聯):
class PostsController < ApplicationController
def index
@posts = Post.all # => []
#stuff
end
# more methods
end
,當我回來了控制器動作,測試級別,他們又回來:
Post.count # => 2
Post.all.all?(&:persisted?) # => true
visit root_path
Post.count # => 2
Post.all.all?(&:persisted?) # => true
在不使用JS我沒有這個問題的規範 - 和從場景中刪除「js:true」可以修復它。但是因爲我使用的是需要JS的站點的一部分,所以這不是一個選項。
我會把這個發佈在Poltergeist的問題上,但是由於我做了一些非常基本的事情,所以我覺得我做錯事的可能性要比這部分的Poltergeist壞了。我的錯誤是什麼?
版本: Rails是5.0.0 鬼驅人是1.10.0 水豚是2.8.0 Rspec的-Rails是3.5.1
工作正常,謝謝:) – Arepo