我知道有一些类似于该主题的问题-答案,但是我的却有些不同。
我也知道我们在量角器中具有first()和last()之类的功能,但是我想知道是否有可能在常规Webdriver中实现某些功能:
//div[@attr='header']/div/div[2]
在哪里可以用[2]表示第二个兄弟姐妹? 我已经尝试过了,但是没有用,但是也许在这里看起来有些不同?
答案 0 :(得分:1)
有两种不同的方法可以完成此操作。与使用.last()
和.first()
相同,您也可以使用.get(<index>)
。索引从0开始。因此element.all(by.xpath('//div[@attr='header']/div/div').get(2)
适用于这种情况。
您还可以使用:nth-child()
CSS选择器来查找同级。 nth-child
的索引从1开始。
<div>
<span>1</span>
<span>2</span>
<span>3</span>
</div>
在上面的html代码段中,如果我想选择第三个跨度,我将使用'div > span:nth-child(3)'