Selenium:注解@FindBy、@FindBys、@FindAll的用法

方式有3种:@FindBy、@FindBys、@FindAll。下文对3中类型的区别和使用场景进行介绍

1)@FindBy

 

@FindBy(id= "A")
private WebElement A;


多个元素用FindBy也可以
@FindBy(id = "userName")
private List username;

 

2)@FindBys

@Findbys({
    @FindBy(className = "A"),
    @FindBy(className = "B")
})
public WebElement AB;
 

 @FindBys 相当于是取交集,是先根据第一个注解获取到对应元素,然后根据第二个注解再帅选出对应的页面元素,。如先找到符合classname=A的元素,再在这些元素集中找到classname=B的所有元素

就像如下操作:

driver.findElement(FindByA>).findElement(FindByB>).

 

3)@FindAll

 

@FindAll({
    @FindBy(id = "A"),
    @FindBy(id = "B")
})
public List aAndB;

 @FindAll相当于是取并集,如找到id=A和id=B的所有元素

原文地址:https://www.cnblogs.com/onmyway20xx/p/7447577.html