我有一個測試,應該從我的病人列表中選擇一個病人。如果我運行沒有js: true
的功能測試,它工作得很好。水豚與js司機不會產生選擇選項
問題是,我選擇病人後,我也必須執行更改JavaScript事件。如果我使用任何JS驅動程序(無論是硒或水豚,WebKit的)我的測試失敗說明:
Unable to find option "Patient #1"
我試圖從問題Capybara with :js => true causes test to fail去除DatabaseCleaner和解決方案。
RSpec.feature "Select patient", type: :feature do
background do
create(:patient)
login_as create(:user)
visit root_path
end
scenario "User selects a created patient", js: true do
select("Patient #1", from: 'clinical_event_patient_id')
end
end
我也試過了background
設置js: true
現在爲止,我沒有成功。
你肯定選擇是對的看法?您是否嘗試使用save_and_open_page或save_screenshot在您的網頁上查看? 如果你有一個js邏輯來顯示這個下拉菜單,有時會發生select和邏輯之間的時間差,以顯示驗收測試中的下拉菜單。 – alexwbuschle
我用硒打開瀏覽器和pyr來暫停它。選擇菜單與提示選擇一起存在,但其他選項不存在。 – sanny
請顯示您的數據庫清潔配置 - 您需要使用截斷測試與js:true –