我一直试图访问网页Automationpub.com中的一个Web元素,我试图找到一个包含一个元素列表的元素,这些元素都具有我想要的元素,但是我需要仅列表中的第三个元素。我已经尝试过使用css,xpath,className定位符来查找列表,但是列表为空或只有一个元素,但这是不可能的。
我有一个“ HomePage”类,该类具有此Web元素的get方法。
@FindBy(className="panel-group")
private List<WebElement> list;
public List<WebElement> getList()
{
return list;
}
然后在主类中调用get方法,但是当我调试代码以查看列表中是否包含17个元素时,我只看到一个空列表或仅包含一个元素的列表
@Test
public void test(){
List<WebElement> x=home.getList();
}
列表应包含17个元素,但实际不包含一个元素或仅包含一个元素。
答案 0 :(得分:0)
我认为className =“ panel-group”将返回父元素。您可以使用xpath找到子元素: @FindBy(xpath =“ // div [@ class ='panel-group'] / div”) 这应该返回子元素。
有一种方法可以验证您是否使用了正确的xpath。在开发人员工具控制台中,以这种格式输入xpath(以上面的xpath为例),然后按Enter:
$ x(“ // div [@ class ='panel-group'] / div”)
这将给出元素列表。如果xpath错误,您将得到一个空列表。