一尘不染

XPath中.//和// *有什么区别?

selenium

通过Firebug查找相对的XPath时:

  1. .//*[@id='Passwd']---------如果我们一开始不使用点表示什么呢?

  2. 只需添加//*Xpath-它突出显示—各种页面元素----------这意味着什么?

以下是XPaths for Gmail密码字段。的意义是*什么?

  • .//*[@id='Passwd']

  • //child::input[@type='password']


阅读 1207

收藏
2020-06-26

共1个答案

一尘不染

这些表达式都选择不同的节点集:

.//*[@id=’Passwd’]

“。” 在开始处表示当前处理 在当前节点处开始 。“ *”选择从该当前节点下降的所有元素节点,其@id-attribute-value等于“
Passwd”。

如果我们一开始不使用点表示什么呢?

然后@id,在 整个 文档中选择-attribute-value等于’Passwd’的所有元素节点。

只需在XPath中添加// *即可突出显示—各种页面元素

这将选择 整个 文档中的所有元素节点。

下面提到:XPatht的Gmail密码字段为true,*的含义是什么?

.//*[@id='Passwd']

这将选择@id-attribute-value等于’Passwd’ 的当前节点的所有元素节点。

// child :: input [@ type =’password’]

这将选择名为所有子元素节点input,其@type-attribute值等于“密码”。该child::轴前缀可以被省略,因为它是默认的行为。

在w3school.com上说明了选择适当表达式的语法。

轴(处理中的当前点)在另一个w3school.com页面上进行了说明。

2020-06-26