36

Selenium WebDriver を使用して、選択したラベルまたはドロップダウンの値を取得し、コンソールに出力したいと考えています。

ドロップダウンから任意の値を選択できますが、選択した値を取得して印刷することはできません。

Select select = new 
Select(driver.findElement(By.id("MyDropDown"))).selectByVisibleText(data[11].substring(1 , data[11].length()-1));
WebElement option = select.getFirstSelectedOption();

しかし、私の努力はすべて無駄でした。選択したオプションを取得するにはどうすればよいですか?

4

5 に答える 5

68

を使用してテキストを取得できるはずですgetText()(を使用して取得したオプション要素の場合getFirstSelectedOption()):

Select select = new Select(driver.findElement(By.xpath("//select")));
WebElement option = select.getFirstSelectedOption();
String defaultItem = option.getText();
System.out.println(defaultItem );
于 2012-08-13T16:21:30.060 に答える
19

答えを完成させる:

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);
于 2012-10-11T04:09:50.517 に答える
-1
var option = driver.FindElement(By.Id("employmentType"));
        var selectElement = new SelectElement(option);
        Task.Delay(3000).Wait();
        selectElement.SelectByIndex(2);
        Console.Read();
于 2016-12-08T09:37:20.667 に答える