首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Watir-webdriver:如何强制click方法等待页面完全加载

Watir-webdriver:如何强制click方法等待页面完全加载
EN

Stack Overflow用户
提问于 2012-05-02 05:42:32
回答 2查看 6.4K关注 0票数 3

在之前使用Watir之后,我最近开始使用Watir-Webdriver,因为我需要一些在webdriver中存在但在Watir中没有的功能。我在watir-webdriver中遇到了一个问题,这是我在Watir中从未遇到过的。

每当在Watir中的按钮上使用click方法时,它都会隐式地等待,直到新页面完全加载。我在Watir-webdriver文档上读到,watir-webdriver中的等待和在此question中的等待已被更改,以适应AJAX对网页所做的动态更改。现在,我自动化的页面没有任何AJAX元素,它只包含静态元素。

但是,当我在watir-webdriver中使用click方法时,它不会等待下一个页面隐式加载,而是立即执行调用中的下一行。我可以使用is wait_until_present,但当等待页面在点击时加载似乎是标准行为时,对我来说,对许多页面这样做似乎有点过分。

我是否遗漏了一些需要切换的选项,以便在watir-webdriver中模拟Watir的click方法?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-03 01:35:31

如果浏览器显示页面已加载,但客户端仍有问题(可能是javascript代码执行,或css逻辑等),那么我建议您在操作之前使用'when_present' decorator

这比单独的等待步骤要干净一些,而且比固定的睡眠周期等要好得多。

代码语言:javascript
复制
browser.button(:how => 'what').when_present.click
票数 1
EN

Stack Overflow用户

发布于 2012-05-09 00:02:54

如果您希望加载内容而不是单击,也可以等待div加载。

代码语言:javascript
复制
browser.div(:how => 'what').wait_until_present
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10404789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档