【发布时间】:2014-09-18 00:00:13
【问题描述】:
我想知道我是否可以通过 css-locators 通过精确文本匹配元素(总体目标是将其用作Selenium 的定位器)。我知道contains 方法
例如:
<div><div>S - Subscriber</div></div>
我可以通过css=div:contains('Subscriber') 或css=div:contains('S - Subscriber') 检索它,但我需要完全匹配。我试过css=div:contains('^S - Subscriber$') 并没有找到这个元素。
还有一点:
当我们使用xpath 时,我们可以通过使用text() 函数检索文本来假设给定的文本在精确元素中(例如//div[text()='S - Subscriber'] 将准确地指向子div,只要//div[contains(., 'S - Subscriber')] 将我们指向父 div,如果我没有搞砸的话),那么在 css 中是否有等价的另一种方式然后css=div > div:contains('S - Subscriber')?我的意思是只指向一个元素,没有父 div。
提前致谢!
【问题讨论】:
-
我在 jquery 中不需要它,我需要 css-selector 在 Selenium 中使用它。所以 css=div[text='S - Subscriber'] - 未找到,css=div[text()='S - Subscriber'] - 未找到,您能建议如何构建它以用作 Selenium 的元素描述吗?更新了问题,但我认为标签会提供信息
标签: selenium xpath selenium-webdriver css-selectors