2

在我的Rails 3应用程序中,我的 HTML 页面上有一个“图像”,单击时会在 html 页面中创建一个“ div ”元素。

我必须通过RSpec测试这个新“ div ”的创建(我正在使用Capybara进行基于视图的测试)。

我写了以下代码:

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

是的,我已经:js=>true在相应的describe.

我认为问题出在 Ajax 时间,所以我添加Capybara.default_wait_time = 5了它以使其正确加载。(但它没有工作)

我也尝试:visible=>true加入应该have_selector('#extended_details_04039'),但没有成功..

有什么我想念的..??

请帮助我......我很长一段时间都被这个问题困扰了......!

4

2 回答 2

3

https://github.com/rspec/rspec-rails/issues/478

你确定你在现场没有重复的ID吗?尝试将其保存到文件并检查重复来源。

要查看页面上发生了什么,请尝试 page.save_and_open_page 方法

于 2012-05-30T14:14:31.307 回答
0

img 是您 ID 的一部分还是标签类型?我相信你应该有

find("img#dealer_code_0409").click
于 2012-05-30T15:46:23.667 回答