首页 > 解决方案 > XPATH - 为什么 text() 函数中的括号

问题描述

这听起来像是一个非常简单的问题,但我无法在任何地方找到答案。在 XPATHs 中使用text()函数时括号的意义是什么?

为什么我不能简单地使用//div[text='myText']而不是//div[text()='myText']

是否可以以某种方式将某种参数传递给函数?

谢谢

标签: seleniumxpathrobotframework

解决方案


text不带括号的是名称测试匹配的text元素。例如,像这样的元素

<div>
    <text>myText</text>
</div>

将匹配//div[text='myText']. 所以需要括号来消除歧义。text()是一个节点类型测试匹配文本节点。它不是一个函数。例如,您也可以将它与descendant::text().


推荐阅读