繁体   English   中英

使用 @FindBy 查找 WebElementS

[英]Using @FindBy to find WebElementS

我们有一个由“//input[contains(@name,'smcNetwork')]”指定的元素列表。 我习惯于寻找像

 @FindBy(xpath = "//*[id='myId']")  private WebElement myelement;

但是,根据主题,我提到的 xpath 返回一个数组(或我猜的列表),我将在其中执行

List<WebElement> networks = driver.findElementsBy( xpath = "//input[contains(@name,'smcNetwork')]")

我想在 FindBy 中执行此操作,但它似乎不起作用:

@FindBy( xpath = "//input[contains(@name,'smcNetwork')]") private List<WebElement> networks;

但那是返回空值。 你能以某种方式做到这一点吗?

你可以做这样的事情。

@FindAll({@FindBy(xpath = "yourpath")})
public List<WebElement> networks;

要使用@FindBy定位网络元素,您可以使用以下代码段

@FindBy(xpath = "xpathValue")
private static WebElement xpathName;

在这里,您可以通过将其设置为公共或私有/受保护来更改访问级别。

如果您将其设为私有,则在该类中使用此定位器并将公共方法定义为公共方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM