Selenium / Select Dropdrown /断言某个值是否存在

时间:2016-04-19 10:28:27

标签: java selenium

我有两个Select webelements。第一个取决于第二个。例如:如果您选择值为interestPeriod的{​​{1}},则20不会提供值loanTermSelect。这正是我想用selenium webtest检查的。

我的代码:

10

通常我使用类似下面的代码断言,给定的元素是可见的。但是这次我想检查一下,如果一个给定的元素提供了一个特定的值。

@Test
public void testLoanTerm20() {
    kqcPage = loginToFinancialPlanet().openKonditionenQuickcheckPage();
    kqcPage = kqcPage.fillForm(getLoanTerm20());
}

private Map<String, Object> getLoanTerm20() {
    Map<String, Object> map = new HashMap<String, Object>();
    map.put("addTypeOfLoan", "KfW Energieeff. Bauen (153)");
    map.put("interestPeriod", "20");
    map.put("loanTermSelect", "25");
    return map;
}

最佳做法是什么?非常感谢帮助。

1 个答案:

答案 0 :(得分:1)

要获得Select课程中的所有选项,您可以使用: -

Select select = new Select(driver);
List<WebElement> allOptions = select.getOptions();

它将返回下拉列表中所有选项的列表,然后您可以迭代下拉列表以获取文本。

for(WebElement el : allOptions) {
    // So you can get the text like:-
    String text = el.getText();
    if(text.equals("specific value")) {
        // Your operation that you want to do once string matches.
    }
}

这样您就可以匹配您要查找的特定值。

希望它有所帮助!