【发布时间】:2013-09-02 10:26:42
【问题描述】:
问题
自从更改了一些 CSS 以从 Googlefonts 加载字体后,我发现有时在本地运行时,我们的 Watir 测试会失败,因为它们正在等待 Googlefonts 加载并且我们的连接已挂起或正在等待它。
因为这是一个 CSS 加载问题,页面的所有元素都可以访问,所以我不能使用像 wait_until_present 这样的东西,因为这些东西是存在的,但不管什么原因,Watir 都不想玩它.
我不想将我的资产管道更改为在本地测试时不加载这些东西,因为这违背了健全性测试的目的。
我尝试过的
我试过传入类似的东西;
browser.wait.until do
window_loaded = browser.execute_script '$(window).load(function() { return true; });'
window_loaded == true
end
但我无法让它工作,而且我不相信这将是解决这个问题的正确方法。
【问题讨论】:
-
您首先看到了什么问题?
-
Watir 拒绝对元素进行操作,即使它们在 DOM 中,我认为是因为它正在等待这些第三方连接。
-
显示使用您正在使用的代码,哪些会引发错误,哪些会引发错误。在我看来,您认为元素在 DOM 中,但实际上并非如此。例如,Watir 可能会在该元素进入 DOM 之前尝试访问它。如果你使用不同的等待函数会发生什么?
标签: css ruby rspec watir watir-webdriver