Selenium WebDriver с C # - Как я могу получить все значения опции из выпадающего списка? - PullRequest
0 голосов
/ 06 марта 2019

Я новичок и в Selenium WebDriver, и в Visual Studio 2017. Мне нужна помощь с: Получите все значения параметров из выпадающего списка и распечатайте их в консоли.

<select id="FilterOrganization" name="FilterOrganization" tabindex="-1" class="select2-hidden-accessible" aria-hidden="true"><option value="">Show All Organizations</option>
<option value="0013000000H9TkiAAF"> Associates, LLC</option>
<option value="0018000000ubNRhAAM">Test Health Systems</option>
</select>

Это то, что у меня естьпробовал:

driver.FindElement(By.Id("org - list")).Click(); 
SelectElement organization = new SelectElement(driver.FindElement(By.Id("FilterOrganization"))); 
IList<IWebElement> options = organization.AllSelectedOptions; 
foreach (IWebElement option in options)
{ 
    console.writeLine(option.Text) 
} 

Спасибо!

Ответы [ 2 ]

0 голосов
/ 02 июня 2019

Я бы посоветовал установить Selenium.Support nuget, а затем вы можете сделать следующее:

using OpenQA.Selenium.Support.UI;


// select the drop down list
var element = driver.FindElement(By.Id("FilterOrganization"));
//create select element object 
var selectElement = new SelectElement(element);

foreach (var option in selectElement.Options)
{ 
    Console.WriteLine(option.Text) 
} 
0 голосов
/ 06 марта 2019

Вы можете взять их вот так

var options = Driver.FindElements(By.CssSelector("select > option"));
var optionValues = options.Select(elem => elem.GetAttribute("value")).ToList();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...