Я закодировал обработку календаря для выбора года, месяца и дня ... но я должен выполнить следующие действия: если год меньше текущего года, он должен перейти к предыдущему году, а если год больше чемв текущем году он должен перейти к будущим годам ... я сделал для будущей даты .. кто-нибудь может подсказать мне, как обрабатывать год для перехода назад, если я передам значение года меньше текущего года?
импорт java.util.Date;import java.util.List;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class DateCalender2 {
public static WebDriver driver = null;
public static void main(String[] args) throws InterruptedException {
System.setProperty("webdriver.chrome.driver","D:\\work\\work_files\\eclipse_selenium_files\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("http://jqueryui.com/datepicker/");
driver.manage().window().maximize();
driver.switchTo().frame(0);
driver.findElement(By.xpath("//input[@id='datepicker']")).click();
// String currentYear = driver.findElement(By.xpath("//div[@class='ui-datepicker-title']/span[@class='ui-datepicker-year']")).getText();
Thread.sleep(2000);
// System.out.println(currentYear);
chooseDate("2019", "May", "13", driver);
}
public static void chooseDate(String year,String MonthName,String Day, WebDriver driver) throws InterruptedException {
String currentMonth = driver.findElement(By.xpath("//div[@class='ui-datepicker-title']/span[@class='ui-datepicker-month']")).getText();
String currentYear = driver.findElement(By.xpath("//div[@class='ui-datepicker-title']/span[@class='ui-datepicker-year']")).getText();
System.out.println(currentYear);
//Selecting year
// int YearInt = Integer.parseInt(currentYear);
// System.out.println(YearInt);
if(!currentYear.equalsIgnoreCase(year)) {
do {
driver.findElement(By.xpath("//div[@id='ui-datepicker-div']/div/a[2]/span")).click();
}
while(!driver.findElement(By.xpath("//div[@class='ui-datepicker-title']/span[@class='ui-datepicker-year']")).getText().equals(year));
}
//Selecting month
if(!currentMonth.equalsIgnoreCase(MonthName)) {
do {
driver.findElement(By.xpath("//div[@id='ui-datepicker-div']/div/a[2]/span")).click();
Thread.sleep(2000);
}
while(!driver.findElement(By.xpath("//div[@class='ui-datepicker-title']/span[@class='ui-datepicker-month']")).getText().equals(MonthName));
}
//Selecting Date
WebElement dateWidget = driver.findElement(By.id("ui-datepicker-div"));
List rows=dateWidget.findElements(By.tagName("tr"));
List<WebElement> columns=dateWidget.findElements(By.tagName("td"));
for (WebElement cell: columns){
//Select 13th Date
if (cell.getText().equals(Day)){
cell.findElement(By.linkText(Day)).click();
break;
}
}
}
}