Выбрать следующий месяц в календаре. Java
Коллеги, всем привет! Столкнулся со следующей проблемой: есть веб-приложение, в нем необходимо кликнуть в календарь. Откроется календарь с месяцами. Текущий месяц активный, выделен. Мне бы хотелось сделать такой тест, чтобы при открытии календаря, производился клик в следующий месяц (идущий за текущим). И так по кругу, т.е. если сейчас Июнь - клик в Июль, Декабрь - клик в Январь и т.д. Сейчас я сделал смену месяца на 1 вперед. Далее хочу получить название месяца в нужном мне формате. А затем нужно как-то завязать локатор с указанием этого месяца (XPath с поиском по тексту)
public CalendarPage chooseNewMonth() {
LocalDateTime date = LocalDateTime.now().plusMonths(1);
date.format(DateTimeFormatter.ofPattern("dd.MM.yy"));
System.out.println(date.getMonth()); //Сейчас выводится JULY, нужно Июл и кликнуть в этот месяц
return this;
}
Все месяцы вложены в таблицу и имеют вид <span class="month">Фев</span>, за исключением активного месяца <span class="month focused active">Июн</span>
Ответы (1 шт):
Получаем текущую дату в нужном формате:
DateTime dateTime = new DateTime();
DateTimeFormatter dateTimeFormatter = DateTimeFormat.forPattern("MMM");
String computationDate = dateTimeFormatter.print(dateTime.plusMonths(1));
String d = computationDate.substring(0, 1).toUpperCase() + computationDate.substring(1, 3);
System.out.println(d);
Далее составляем xPath для таблицы с месяцами и ищем $(ByText(d)).click(); от элемента-таблицы.

