如果选择了从下拉列表中选择的选项,如何断言。硒。页面对象模型

我需要从下拉列表中选择选项并检查此选项是否已被选中/对用户可见。选择选项的代码:


@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>

我想选择“阿拉巴马”并使用断言来检查“阿拉巴马”是否真的被选中。我知道我必须编写一个函数,将选择状态的名称发送到字符串。断言它将被包括在这里:


@Then("^I see \"([^\"]*)\" in dropdown$")

public void iSeeInDropdown(String state) 

Assert.assertEquals("Alabama",??????);}


红颜莎娜
浏览 53回答 1
1回答

梵蒂冈之花

在 Select 类中,有一个名为“getFirstSelectedOption()”的方法,它将从下拉列表中返回选定的 Web 元素选项。通过使用此方法,您可以检索如下选项:Select select = new Select(someElement);String option = select.getFirstSelectedOption().getText();您可以断言如下条件:Assert.assertEquals("Alabama", option);尝试按照以下步骤操作,在页面对象类中添加以下方法:public String getSelected() {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; return new Select(StateDropDown).getFirstSelectedOption().getText().trim();&nbsp; &nbsp; &nbsp; &nbsp; }并像下面这样修改这个步骤定义方法,它将调用页面对象类的方法,然后获取选定的选项并断言它。@Then("^I see \"([^\"]*)\" in dropdown$") {&nbsp; &nbsp; &nbsp; &nbsp; public void iSeeInDropdown(String state)&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; String selectedOption = new PageObjects().getSelected();&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Assert.assertEquals("Alabama", selectedOption);&nbsp; &nbsp; &nbsp; &nbsp; }我希望它有帮助...
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java