基本上,我正在寻找一种语法,可以用来选择一个具有相同名称,属性和属性的元素。
我正在考虑通过索引选择它们。(不幸的是,Xpath无法使用,因为它是动态元素。)
所以,我有一个页面,其中元素Add
显示两次,它们都添加/抛出不同的值。但是它们两个都有相同的ID,属性和名称。在测试中,我需要选择第一个Add
,然后再选择另一个。
${add attributes row} //*[@data-bind="click: function() {
$parents[1].addItem($parents[1]
.attributes()[$parentContext.$index()]) }", index=1]
${add attributes row_2} //*[@data-bind="click: function() {
$parents[1].addItem($parents[1]
.attributes()[$parentContext.$index()]) }", index=2]
是否可以通过索引选择它们?
如果找到同时选择了两者的XPath,则可以通过将XPath放在括号中来对整个XPath应用谓词。例如,// a选择整个DOM中的所有锚。(// a)[4]选择在DOM中找到的第四个锚点。您还可以使用last和position函数来选择相对索引,例如倒数第二个锚点(// a)[last()-1]
第一次尝试使用这样的定位器:
xpath=(//*[@data-bind="click: function() {$parents[1].addItem($parents[1].attributes()[$parentContext.$index()]) }"])[1]
对于第二个尝试这样的定位器:
xpath=(//*[@data-bind="click: function() {$parents[1].addItem($parents[1].attributes()[$parentContext.$index()]) }"])[2]
看到这个相关的问题
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句