Ваш селектор нашел для меня 2 элемента. Этот css селектор: # adultDropdown # ctl00_mainContent_ddl_Adult нашел тот, который вам нужен. Этот вид метода может использоваться для ожидания элемента перед его взаимодействием:
public static void waitForElementPresent(this IWebElement element)
{
try
{
wait.Until(driver => element.Displayed);
}
catch (Exception e)
{
Assert.Fail("The element not found. The exception: \n" + e.GetType());
}
}
После того, как элемент найден, вы можете создать Select и использовать это: selectByValue ("2" ); метод выбора необходимого значения. Это метод в основном для работы с IWebElements. Если вы их не используете, то это может быть использовано для вас:
System.setProperty("webdriver.chrome.driver", "C:\\Users\\Liel PC\\Desktop\\TEST\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://www.spicejet.com");
By elem = By.CssSelector("#adultDropdown #ctl00_mainContent_ddl_Adult");
var wait = new WebDriverWait(driver, TimeSpan.FromSeconds(60))
try
{
wait.Until(dr => ExpectedConditions.ElementIsVisible(element));
}
catch (WebDriverTimeoutException wte)
{
Logger.Info($"Timeout during wait. Exception: {wte.Message}");
}
Select s = new Select(driver.findElement(elem)); // id for Adult
s.deselectByValue("2");