![](/img/trans.png)
[英]How to print the text of the selected option choosen through 'selectByVisibleText' method in selenium
[英]How to assert if selected option from drop down is choosen. Selenium. Page Object Model
我需要從下拉列表中選擇選項,並檢查該選項是否為用戶選擇/可見。 選擇選項的代碼:
@FindBy(how = How.ID, using = "id_state")
public WebElement StateDropDown;
public void ChooseState(String index){
Select Choose = new Select(StateDropDown);
Choose.selectByVisibleText(index);
這是我的下拉列表:
<select name="id_state" id="id_state" class="form-control">
<option value="">-</option>
<option value="1">Alabama</option>
<option value="2">Alaska</option>
<option value="3">Arizona</option>
<option </select>
我想選擇“阿拉巴馬州”,並使用assert來檢查是否實際上選擇了“阿拉巴馬州”。 我知道我必須編寫一個函數,該函數將選擇狀態的名稱發送到字符串。 斷言它將包含在這里:
@Then("^I see \"([^\"]*)\" in dropdown$")
public void iSeeInDropdown(String state)
Assert.assertEquals("Alabama",??????);}
在Select類中,有一個名為“ getFirstSelectedOption()”的方法,該方法將從下拉列表中返回所選的Web元素選項。 通過使用此方法,您可以檢索以下選項:
Select select = new Select(someElement);
String option = select.getFirstSelectedOption().getText();
您可以聲明以下條件:
Assert.assertEquals("Alabama", option)
;
嘗試執行以下步驟,
在頁面對象類中添加以下方法:
public String getSelected() {
return new Select(StateDropDown).getFirstSelectedOption().getText().trim();
}
並像下面一樣修改此步驟定義方法,該方法將調用頁面對象類的方法,然后獲取所選的選項並進行斷言。
@Then("^I see \"([^\"]*)\" in dropdown$") {
public void iSeeInDropdown(String state)
String selectedOption = new PageObjects().getSelected();
Assert.assertEquals("Alabama", selectedOption);
}
希望對您有幫助...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.