У меня есть кнопка, которая остается в течение нескольких минут, например, 15 минут, если я нажимаю на эту кнопку в заданное время, то она открывает форму и закрывает ее. Но когда время истекло, кнопка исчезает, и никакие действия не должны выполняться. Когда я выполняю этот код, он работает один раз, но когда я повторяю его, он этого не делает. Вместо этого он открывает еще какую-то вкладку.
Я пробовал условие else, чтобы разобраться с этой проблемой, например кнопка ifотображается, затем выполняется код, если нет, тогда будет выполнено другое условие. К сожалению, когда кнопка исчезает, код ведет себя очень неправильно, он открывает ненужные вкладки.
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
WebElement CheckIn=driver.findElement(By.xpath("/html/body/callingdr-app/apptemplate/div/div/div/page-tab/div/p-tabview/div/div/p-tabpanel[1]/div/div/ng-component/div[1]/div/div[2]/div/table/tbody/tr[1]/td[1]/button[1]"));
if(CheckIn.isDisplayed()) {
Actions builder=new Actions(driver);
Action mouseovercheckin=builder.moveToElement(CheckIn).build();
mouseovercheckin.perform();
CheckIn.click();
//Click on next , visit reason
driver.findElement(By.xpath("/html/body/div[3]/div[1]/span/p-header/div/div[2]/button[1]")).click();
//Click on next,history
driver.findElement(By.xpath("/html/body/div[3]/div[1]/span/p-header/div/div[2]/button[2]")).click();
//Click on next , Payment
driver.findElement(By.xpath("/html/body/div[3]/div[1]/span/p-header/div/div[2]/button[2]")).click();
//Close without filling intake form
driver.findElement(By.xpath("/html/body/div[3]/div[1]/span/p-header/div/div[2]/button[2]")).click();
System.out.println("CheckedIn successfully");
}else {
System.out.println("Appointment overrude , No show");
}
}```
Expected result is : when if condition true, form should open and then close.
Actual result: form opens but once ,not every time if button is still there.and if not , then else condition should be executed but it doesn't.