Исключение, которое вы получаете, состоит в том, что кнопка, которую вы пытаетесь нажать, находится за этим элементом <div class="footer navbar-fixed-bottom">...</div>
, который, как представляется, является нижним колонтитулом вашей страницы.
Вы можете попробовать выполнить любой из следующих шагов, чтобы решить проблема
Прокрутите до любого элемента под кнопкой входа (если есть). Вы можете использовать следующий код для этого:
protected boolean scrollToElement(WebElement element)
throws NoSuchElementException, StaleElementReferenceException {
try {
jsExecutor.executeScript("arguments[0].scrollIntoView(true);", element);
return true;
} catch (NoSuchElementException e) {
logError("Element Not found exception when scrolling to element (JavaScript)", e);
throw e;
} catch (StaleElementReferenceException e) {
logError("Stale element exeption when scrolling to element (JavaScript)", e);
throw e;
}
}
- Закройте нижний колонтитул, если он предназначен для принять куки или что-то подобное, или вы также можете применить Custom CSS к этому элементу, чтобы скрыть его, и затем попытаться щелкнуть элемент.
String css= "display:none !important;"
protected void addCustomCSS(WebElement webElement, String css) {
registerCall(new Object() {
}.getClass().getEnclosingMethod().getName());
try {
String style = (String) jsExecutor.executeScript("arguments[0].getAttribute('style')", webElement);
jsExecutor.executeScript("arguments[0].setAttribute('style', " + css + ")", webElement);
stylesQueue.add(style);
} catch (Exception e) {
e.printStackTrace();
}
}