Appium - выберите два дня после определенного дня месяца

avatar
Gökhan Uçar
1 июля 2021 в 17:15
43
1
1

Я пытаюсь выбрать два дня после текущего дня месяца. В моем классе StepImplementation я написал такую ​​функцию, но она выдает ошибку:

@Step("pick two days after current day")
    public void getCurrentDayOfMonth(String day) throws InterruptedException {
        Calendar cal = Calendar.getInstance();
        int dayOfMonth = cal.get(Calendar.DAY_OF_MONTH);

        int dayToPick = dayOfMonth + 2;
        day = String.valueOf(dayToPick);

        appiumDriver.findElement(By.xpath("//*[@text='" + day + "']")).click();
        System.out.println("Element is clicked.");
        Thread.sleep(2000);
    }

Для моего параметра String day он показывает мне эту ошибку: Несоответствие счетчика параметров (найдено 1, ожидаемое 0) с аннотацией шага: «выбрать два дня после текущего дня»

По сути, я пытаюсь выбрать дату рейса из средства выбора даты. Мне нужно выбрать два дня после текущего дня месяца, но я немного запутался.

Спасибо за помощь.

Источник

Ответы (1)

avatar
Gökhan Uçar
1 июля 2021 в 17:38
0

Я написал другой метод, и теперь он отлично работает:

@Step("read text value of the element with <id>")
    public void readTextValue(String id) throws InterruptedException {
        String currentDate = appiumDriver.findElement(By.id(id)).getText();
        System.out.println("Element has been read.");
        int dayToPick = Integer.parseInt(currentDate) + 2;
        String dayToPickAsText = String.valueOf(dayToPick);
        appiumDriver.findElement(By.xpath("//*[@text='" + dayToPickAsText + "']")).click();
        Thread.sleep(2000);
    }