我可以在另一个Web元素中获取Web元素吗?

时间:2015-09-08 14:56:09

标签: java selenium testing

哟dawg我听说你喜欢网络元素......

所以我想知道是否有可能通过类,id或任何其他选择器找到一个web元素,然后在里面找到另一个按类等的元素。

背景

我有一个带有id的容器,其中包含我希望按类放入列表的元素集合,问题是如果我尝试getElements(By.class)它会拾取一些我不喜欢的元素我想要。

尝试

我尝试过使用XPATH,但感觉像硬编码一样脏。由于这些测试应该是稳健的,我认为必须有更好的方法。

此代码捕获我想要的元素

public double checkStars(){
    List<WebElement> starsOn = driver.findElements(By.className("on"));
    return starsOn.size();
}

问题

将搜索限制在另一个网页内部时,我可以选择一个网页元素吗?它是如何完成的?

1 个答案:

答案 0 :(得分:3)

是。您可以在元素中找到另一个元素,前提是该元素是该元素的子元素。像这样的东西:

WebElement eleParent=driver.findElement(Locator);
WebElement eleChild=eleParent.findElement(Locator);

如果您的定位器是XPath,请小心!!!