[英]How to get selected option using Selenium WebDriver with Java
我想使用 Selenium WebDriver获取选定的 label或下拉列表的值,然后将其打印在控制台上。
我可以 select 下拉列表中的任何值,但我无法检索所选值并打印它:
Select select = new
Select(driver.findElement(By.id("MyDropDown"))).selectByVisibleText(data[11].substring(1 , data[11].length()-1));
WebElement option = select.getFirstSelectedOption();
但是我所有的努力都是徒劳的。 我如何获得选择的选项?
您应该能够使用getText()
获取文本(对于您使用getFirstSelectedOption()
获得的选项元素):
Select select = new Select(driver.findElement(By.xpath("//select")));
WebElement option = select.getFirstSelectedOption();
String defaultItem = option.getText();
System.out.println(defaultItem );
完成答案:
String selectedOption = new Select(driver.findElement(By.xpath("Type the xpath of the drop-down element"))).getFirstSelectedOption().getText();
Assert.assertEquals("Please select any option...", selectedOption);
在 Selenium Python 中,它是:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support.ui import Select
def get_selected_value_from_drop_down(self):
try:
select = Select(WebDriverWait(self.driver, 20).until(EC.element_to_be_clickable((By.ID, 'data_configuration_edit_data_object_tab_details_lb_use_for_match'))))
return select.first_selected_option.get_attribute("value")
except NoSuchElementException, e:
print "Element not found "
print e
在以下选项上:
WebElement option = select.getFirstSelectedOption();
option.getText();
如果从方法getText()
得到一个空白,则可以使用方法getAttribute
从选项的值中获取字符串:
WebElement option = select.getFirstSelectedOption();
option.getAttribute("value");
简答
Select select = new Select(driver.findElement(By.xpath("//select")));
System.out.println("selected items from the dropdown"+ select.getFirstSelectedOption().getText());
var option = driver.FindElement(By.Id("employmentType"));
var selectElement = new SelectElement(option);
Task.Delay(3000).Wait();
selectElement.SelectByIndex(2);
Console.Read();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.