Мне удалось получить помощь, нажав на первый календарь, и мне нужно было сделать то же самое для следующего календаря.Поэтому мне нужно выбрать 1-й день месяца в первом календаре, а для 2-го календаря мне нужно нажать на последний день следующего месяца.Расписание, которое я создаю, создается каждые два месяца.
Первый выбор календаря выглядит следующим образом, и он работает;
IWebElement FromCalendar = Chromedriver.FindElement(By.Id("ctl00_MainContent_dpStart_B-1")); //
FromCalendar.Click();
//Always Click the current 1st day of the month
new WebDriverWait(Chromedriver, TimeSpan.FromSeconds(2)).Until(ExpectedConditions.ElementToBeClickable(By.XPath("//td[@class='dxeCalendarDay'][.='1']"))).Click();
Второй календарь следующий и не работает, я также создалпеременная, которая включена в xpath, но я получаю ошибку тайм-аута, и даже если я изменяю секунды на 20 или 30 секунд, я все равно получаю ту же ошибку.Если бы я жестко закодировал значение в переменной, оно все равно не сработало бы.
String LastDayofNextMonth = endOfLastDayNextMonth.ToString("dd");
// 2nd Calendar
Chromedriver.FindElement(By.Id("ctl00_MainContent_dpEnd_B-1Img")).Click(); ; //
//Click next month because schedule should be every 2 months
Chromedriver.FindElement(By.Id("ctl00_MainContent_dpEnd_DDD_C_NMCImg")).Click(); //
//Always Click the last day of next month - so schedule is for every 2 months
new WebDriverWait(Chromedriver, TimeSpan.FromSeconds(3)).Until(ExpectedConditions.ElementToBeClickable(By.XPath("//td[@class='dxeCalendarDay'][.='"+LastDayofNextMonth+"']"))).Click();
Календарь открывается и переходит на следующий месяц, но последний день месяца не щелкается, и я получаю следующую ошибку;
OpenQA.Selenium.WebDriverTimeoutException: «Превышено время ожидания через 3 секунды»
Я не уверен, почему первый календарь работает, а второй - нет.
Заранее спасибо.