2017-04-13 95 views

回答

2

WebDriverclick()模拟真正的用户与UI的交互。我将通过向浏览器发送本地事件来执行(在大多数浏览器中),并且必须可见才能点击它。从docs

...如果点击()通过发送本地事件(这是默认 大多数浏览器/平台)

有一个元素一些先决条件完成的被点击。该元件 必须是可见的,并且必须具有的高度和在另一方面宽度大于0

JavaScriptclick()

执行的JavaScript在当前选择的帧或 窗口的上下文。

不管WebElement是否可见。这种方法忽略了用户交互Selenium试图模拟的想法。

0
深入浅出

。 Webdriver使用本地浏览器事件来点击元素,并且JavaScript使用JavaScrip来点击元素。

如果我没有记错的话,Selenium 1正在使用JavaScript进行所有动作,但是他们在webdriver(Selenium 2)中改变了这一点,现在他们使用原生浏览器事件与浏览器交互。为此,您需要浏览器(geckodriver,IEDriver,Chromedriver等)的相应支持。另一方面,JavaScript引擎内置在所有主流浏览器中,因此您不需要额外的可执行文件。

相关问题