当前位置: 首页 > 面试题库 >

如何使用Selenium WebDriver,Java通过文本选择Web元素

鲁华皓
2023-03-14
问题内容

我需要在网页上找到以下元素

<div class="b-datalist__item__addr">noreply@somedomain.com</div>

我正在用Java为Selenium WebDriver编码。
需要该元素的确切CSS选择器才能与driver.findElement(By.cssSelector(the- selector).click命令一起使用。
div[class='b-datalist__item__addr']
选择器还不够好,因为我必须根据noreply@somedomain.com不是链接的文本进行搜索,所以我不能使用findElement(By.linkText())命令。


问题答案:

CSS不允许您执行基于文本的搜索。 xpath 是唯一的选择。

//div[contains(text(),'noreply@somedomain.com')]


 类似资料:
  • 问题内容: 我的网站上有一个选择控件。我正在使用页面对象与页面进行交互。如果我这样做(在我的课程下的前两行和我的方法中) 它以空指针失败。我也尝试了没有。 现在,如果我在我的方法中执行此操作,则一切正常,然后选择正确的项目 这是该控件的实际网页摘要(已编辑以保护无辜者) 让我说我可以解决我的问题, 但是 我不明白为什么“ 正常 ”路径无法正常工作。 问题答案: 那是因为该类具有以下构造函数: 见J

  • 问题内容: 我刚开始使用Selenium Webdriver,就立即遇到了一个问题,涉及要尝试选择/单击的所有按钮,这些按钮都没有ID并共享同一类。 所以我想知道如何通过它们包含的唯一文本来选择它们。 我可能正在考虑使用CSS选择器,但是我不确定如何告诉它寻找特定文本以选择元素。 我目前所拥有的是: 到目前为止非常基本。 我有CssSelector的地方,不确定是否要说选择包含文本“ xyz”的“

  • 问题内容: 我试图从我的Angular.js应用程序中删除jquery,以使其更轻巧,而改用Angular的jqLit​​e。但是该应用大量使用了jqLit​​e不支持的find(’#id’)和find(’。classname’),仅使用了“标签名称”(根据文档) 想知道您认为改变它的最佳方法是什么。我考虑过的一种方法是创建自定义HTML标签。例如:更改 至 和 至 有什么想法吗?其他想法? 谢谢

  • 问题内容: 我想使用javascript设置网页上所选元素的属性。 我发现了2种使用javascript设置属性的方法 1个 2 但是我想将javascript应用于使用seleniumwebdriver找到的特定Webelement 例如,我已经使用Selenium Webdriver选择了一个链接 现在,我想使用javascript设置此webelement的属性 但我不知道如何将两者结合 请

  • 问题内容: jQuery或jQuery-UI是否具有禁用给定文档元素的文本选择功能? 问题答案: 在jQuery 1.8中,可以按照以下步骤进行操作:

  • 问题内容: 我有以下HTML标记: 当我使用CSS选择器时,我得到了。 不幸的是,我不能更改标记,而只能使用CSS选择器,因为我使用的是聚合RSS提要的系统。 是否有我只能接受文本节点的CSS选择器?具体在这个例子中? 问题答案: 这里的问题是您写入屏幕的内容没有显示在DOM:P中。 也似乎还行不通(至少在Safari 6.0.3中对我来说),或者它根本还没有产生预期的结果。 最后是属性选择器,使