使用Selenium Webdriver(Java)
当用户在另一个会话中返回该页面时,我需要验证是否保存了下拉菜单中的选定值。
下拉菜单很简单,它只会更改搜索后每页显示的记录数。
值为5,10,25,50和100。
使用getText()只返回数组中的值。我需要验证,如果用户选择25,那么返回此特定页面时该值是相同的。一个简单的断言声明在这里不起作用,因为值" 25"可以存在于其他领域。
我也尝试过使用Select的各种方法,但没有成功。
我很感激任何建议。如果我错过了任何关键信息,请随时指出,我会更新帖子。
答案 0 :(得分:2)
您需要使用Select
类
IWebElement selectElement = driver.FindElement(By.Id("id"));
SelectElement selectedValue = new SelectElement(selectElement);
string selectedText = selectedValue.SelectedOption.Text;
我用C#编写的。但Java也非常接近。参见this
修改强> 根据api doc
,您应该使用getFirstSelectedOption().getText()
而不是SelectedOption.Text;
答案 1 :(得分:1)
Select select = new Select(driver.findElement(By.xpath("//path_to_drop_down")));
WebElement option = select.getFirstSelectedOption()
答案 2 :(得分:0)
-这将在下拉菜单中提供选定的选项
Select select = new Select(driver.findElement(By.xpath("//path_to_drop_down")));
WebElement option = select.getFirstSelectedOption()
String SelectedText = option.getText();