首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WebDriver.findElement()和WebElement.findElement()的Selenium差异

WebDriver.findElement()和WebElement.findElement()的Selenium差异
EN

Stack Overflow用户
提问于 2014-11-12 16:42:45
回答 2查看 10.6K关注 0票数 2

我使用WebElement.findElement(By.cssSelector('')).click();在页面上查找元素,但它返回"Unable to locate element",但当我使用WebDriver.findElement(By.cssSelector('')).click();时,它能够找到该元素并单击它。

我无法理解这两个接口的findElement()之间的区别。请帮帮忙。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-12 18:45:58

WebElement.findElement()将使用元素作为搜索选择器的范围。这意味着它通常用于搜索子元素。

WebDriver.findElement()将使用驱动程序(即整个页面)来搜索给定的选择器。

因此,对于您的实例(我们需要更多信息才能更准确地找出它),很可能您的选择器不匹配给定WebElement的任何子项,但是当driver尝试在整个页面(不包括iframe)中搜索它时,它可以找到它。

票数 6
EN

Stack Overflow用户

发布于 2014-11-12 19:58:12

WebDriver代表你的浏览器,WebElement代表web上的单个元素page.for更好地理解你可以提供你的代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26882604

复制
相关文章

相似问题

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