我有两个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;
}
最佳做法是什么?非常感谢帮助。
答案 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.
}
}
这样您就可以匹配您要查找的特定值。
希望它有所帮助!