我想找到页面上的所有元素,只需将索引为X的元素保存为变量,而不必先将所有元素保存为列表。我想做这样的事情,但它给了我错误“表达式的类型必须是一个数组类型,但它解析为By”。
<ul class="test">
<li name="article"></li>
<li name="article"></li>
<li name="article"></li>
<li name="article"></li>
<li name="article"></li>
</ul>
WebElement article = driver.findElements(By.cssSelector(".test li[name='article']")[2]);
如何将3:d元素保存为WebElement变量?
答案 0 :(得分:1)
WebElement article = driver.findElements(By.cssSelector(".test li[name='article']")).get(2);
喜欢这个。尝试使用IDE更容易,更快地了解API误用问题。 By.cssSelector()返回By的一个实例,你将它传递给findElements,它返回一个List的实例,你可以调用.get(index)来获取一个特定的元素。