TES*_*T-M 21 xml selenium xpath automated-tests selenium-webdriver
通过Firebug找到相对的XPath:它创建了类似的
.//*[@id='Passwd']---------如果我们在开始时不使用dot表示什么呢?
只需添加//*Xpath - 它突出显示---各种页面元素----------它表示什么?
以下是Gmail密码字段的XPath.有什么意义*?
.//*[@id='Passwd']
//child::input[@type='password']
kjh*_*hes 41
这里有几个不同的关键XPath概念......
绝对vs相对XPath(/vs .)
/ 引入绝对位置路径,从文档的根开始.. 从上下文节点开始引入相对位置路径.命名元素vs任何元素(enamevs *)
/ename选择一个ename根元素
./ename选择ename当前节点的所有子元素./* 选择根元素,无论名称如何.
./*或者*选择上下文节点的所有子元素,而不管名称.后代或自我轴(//*)
//ename选择ename文档中的所有元素.
.//ename选择ename上下文节点或其下的所有元素.//* 选择文档中的所有元素,无论名称如何.
.//* 选择上下文节点处或下方的所有元素,无论名称如何.考虑到这些概念,以下是您具体问题的答案......
.//*[@id='Passwd']表示选择当前上下文节点或其下具有id属性值等于的
所有元素'Passwd'.//child::input[@type='password']可以简化为,
//input[@type='password']并且意味着选择input文档中type属性值等于的所有元素'password'.zx4*_*485 27
这些表达式都选择不同的节点集:
.//*[@id='Passwd']
'.' 在开始时意味着当前处理在当前节点处开始.'*'选择从当前节点下降的所有元素节点,@id-attribute-value等于'Passwd'.
如果我们在开始时不使用dot表示什么呢?
然后,您将@id在整个文档中选择-attribute-value等于'Passwd'的所有元素节点.
只需在XPath中添加//* - 它突出显示---各种页面元素
这将选择整个文档中的所有元素节点.
下面提到:XPatht的Gmail密码字段是真的有什么意义*?
.//*[@id='Passwd']
Run Code Online (Sandbox Code Playgroud)
这将选择从当前节点下降的所有元素节点,其中@id-attribute-value等于'Passwd'.
//子::输入[@类型= '密码']
这将选择名为所有子元素节点input,其@type-attribute值等于"密码".该child::轴前缀可以被省略,因为它是默认的行为.
w3school.com上解释了选择适当表达式的语法.
Axes(处理中的当前点)在另一个w3school.com页面上进行了解释.
| 归档时间: |
|
| 查看次数: |
46763 次 |
| 最近记录: |