我使用水豚與webkit
驅動程序,當我用js: true
運行測試時,會引發下面列出的錯誤。當我在其他測試中做同樣的事情,沒有js: true
一切工作正常。水豚未能找到元素的位置
PS。在這個測試中不需要js :true
。這段代碼實際上是在一個幫助器中,但我把它放在這裏就像測試,所以它會更容易理解。我在另一個測試中使用js: true
來調用這個幫助器方法。下面
代碼引發Capybara::Webkit::ClickFailed: Failed to find position for element /html/body/div/div/div/div[2]/a[12]
scenario "adding logged days", js: true do
visit '/logged_days'
find(:xpath, "//a[contains(.,'12')]").click
# click_link("12") raises same error
expect(current_path).to eq("/logged_days/new")
fill_in "Опис виконаної роботи", with: "Some description"
fill_in "Кількість відпрацьованих годин", with: 40
click_button "Додати"
expect(current_path).to eq("/logged_days")
expect(page).to have_content("40")
end
/logged_days:
<div class="page-header">
<h2>Logged Days <small>March</small></h2>
</div>
<div class="conteiner-fluid logged_days_container">
<% for i in 1..31 %>
<%= link_to new_logged_day_path(:cal_date => "#{i}"), method: :get do %>
<div class="calendar_cell">
<p class="cell_date"><%= i %></p>
<p class= "cell_text"></p>
</div>
<% end %>
<% end %>
</div>