У меня проблема с выбором из списка поиска, что я хочу искать, я получаю список, но я не понимаю, как выбрать и как написать правильную ошибку получения, когда я попытался выбрать xpath, как это решить, и если кто подскажет, как реализовать функцию поиска по жанру
[TestMethod]
public void TestMethod1()
{
IWebDriver driver = new ChromeDriver();
//navigation to Gov Site
driver.Navigate().GoToUrl("https://www.gov.il/en");
Console.WriteLine("opened url");
driver.Manage().Window.Maximize();
IWebElement element = driver.FindElement(By.Name("query"));
element.SendKeys("Population and Immigration Authority");
var wait = GetWebdriverWait(TimeSpan.FromSeconds(40));
IList<IWebElement> elements = wait.Until(GetAllElement(By.XPath("/html/body/div[3]/header/div[4]/div/div/div/div/div/div/span[1]")));
foreach (var elel in elements)
{
if (elel.Text.Equals("Population and Immigration Authority"))
{
elel.Click();
}
}
element.FindElement(By.XPath("//*[@id='btnSearch']/i")).Submit();
}
private Func<IWebDriver, IWebElement> GetAllElement(By locator)
{
return ((x) =>
{
return x.FindElement(locator);
});
}
public static WebDriverWait GetWebdriverWait(TimeSpan timeout)
{
driver.Manage().Timeouts().ImplicitWait = (TimeSpan.FromSeconds(1));
WebDriverWait wait = new WebDriverWait(driver, timeout)
{
PollingInterval = TimeSpan.FromMilliseconds(500),
};
wait.IgnoreExceptionTypes(typeof(NoSuchElementException), typeof(ElementNotVisibleException));
// Logger.Info(" Wait Object Created ");
return wait;
}