【发布时间】:2019-01-10 18:52:23
【问题描述】:
我正在尝试定位第三个 div 角色的文本:
<div class="jss295">
<div class="section-header">
<h3 class="section-header-title">LABELS</h3></div>
<div role="button" class="jss300 jss299" tabindex="-1"><span class="jss313">system-all</span></div>
<div role="button" class="jss300 jss299" tabindex="-1"><span class="jss313">paloaltonetworks_iPoiycgPut</span></div>
<div role="button" class="jss300 jss299" tabindex="-1"><span class="jss313">system-paloaltonetworks</span></div>
</div>
我尝试了xpath 如下:driver.findElement(By.xpath("//span[contains(text(), '" + str + "')]")).getText(),其中str 是我需要的文本。xpath 有效,但我想改用cssSelector。
【问题讨论】:
-
如果你的意思是要通过文本选择节点,那么CSS-selector恐怕是不可能的(Selenium不支持
:contains伪类) -
如果您有文本以便选择元素,那么为什么要返回元素中的文本?在我看来,你已经拥有它了......
-
@JeffC - 你说得对,但我想获取文本以便在我的测试中使用它我想在我执行导致该文本出现的 n 操作后验证该文本是否存在,我希望能够确保在我的测试运行并创建此文本(这是一个标签)时存在,并且我想将我的预期结果与实际结果进行比较。
标签: java selenium-webdriver css-selectors