Наконец, ваш метод работает с методом ниже
private void waitForElement(By by, long delay) {
LocalDateTime end = LocalDateTime.now().plusSeconds(delay);
while (LocalDateTime.now().compareTo(end) <= 0) {
if (driver.findElements(by).size() > 0) {
break;
}
}
}
Сначала я запускаю метод wait, а затем проверяю, есть ли список с такими элементами ниже
if (driver.findElements(By.xpath("//article[starts-with(@class, 'DetailPage__container--') and starts-with(@id, 'ride-')]/div[starts-with(@class, 'DetailPage__highlights--')]//button[@type='submit']/span[text()='Accept offer']")).size() > 0){//Here i call the element}
Так что, если элемент существует, я могу вызвать его внутри, если нет исключения времени больше