selenuim-webdriver註解之@FindBy、@FindBys、@FindAll的區別

selenium-webdriver中獲取頁面元素的方式有很多,使用註解獲取頁面元素是其中一種途徑,

方式有3種:@FindBy、@FindBys、@FindAll。下文對3中類型的區別和使用場景進行介紹

1)@FindBy

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

2)@FindBys

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

@FindBys 相當於是取交集,是先根據第一個註解獲取到對應元素,然後根據第二個註解再帥選出對應的頁面元素,。如先找到符合classname=A的元素,再在這些元素集中找到classname=B的所有元素

就像如下操作:

driver.findElement(<By_FindByA>).findElement(<By_FindByB>).


3)@FindAll

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

@FindAll相當於是取並集,如找到id=A和id=B的所有元素

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章