在我的 Rails 3 应用程序中,我的 HTML 页面上有一个“image”,它在 html 中创建了一个“div”元素页面,当点击时。
我必须通过RSpec测试这个新的“div”的创建(我正在使用Capybara进行基于 View 的测试)。
我编写了以下代码:
it "clicks the extended details button" do
Capybara.default_wait_time = 5
within('.table_expand') do
find("#img_dealer_code_04039").click
should have_selector('#extended_details_04039')
end
end
是的,我已经在相应的describe
中添加了:js=>true
。
我认为问题出在 Ajax 时间上,所以我添加了 Capybara.default_wait_time = 5
以便它正确加载。 (但是没有成功)
我还尝试将 :visible=>true
放在行中 should have_selector('#extended_details_04039')
,但没有成功..
我有什么遗漏的吗??
请帮助我...我已经被这个问题困扰了很长一段时间..!!
最佳答案
https://github.com/rspec/rspec-rails/issues/478
您确定网站上没有重复的 ID 吗? 尝试将其保存到文件并检查源是否有重复。
要查看页面上发生的情况,请尝试 page.save_and_open_page方法
关于ruby-on-rails - capybara 无法识别ajax加载的元素。?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10817220/