1

我正在尝试使用 Capybara、RSpec 和 JS(使用 Webkit)来实现请求规范。我有一个发送 JS 请求(jQuery.load)的测试,该请求将返回一个页面,该页面将嵌入到现有页面中。

当我用 pry 调试测试时,它会运行。当它自己运行时,它会失败。我想这是由于使用 pry 时增加了时间。有没有办法可以强制 Cabypara 重试一段时间?

我的测试代码如下所示:

    describe "load list for given period", js:true do
      it "loads the last entry" do
        page.fill_in "period_value", with: "1"
        page.select "Entries", from: "period_unit"
        page.click_link "update_list_section"

        page.all(:xpath, "//div[@id='list_section_wrapper']/table/tbody/tr").count.should == 2
      end
    end
4

1 回答 1

1

因为该元素在请求时已经存在,所以Capybara.default_wait_time它不起作用,即水豚不等待/重试。我不得不努力sleep(0.5)让它工作。

在这篇博文中得到了很好的解释(只要我在 googlez 中输入了正确的关键字)。

于 2012-06-22T04:32:46.703 回答