Доброго времени.
Столкнулся с такой проблемой:
Объявляю форму
@FindBy(xpath = "//*[@name='registerform']") WebElement registrationForm;
и заведомо несуществующий вебэлемент
@FindBy(xpath = ".//*[@name='email2']") WebElement emailInput;
Дальше конструктор и шаги
public RegistrationSteps(WebDriver driver){ this.driver = driver; PageFactory.initElements(driver, this); } @Step public void openRegistrationPage() { driver.get("<site_address>"); wait = new WebDriverWait(driver, 5); wait.until(ExpectedConditions.visibilityOf(registrationForm)); } @Step public void enterData(String email) { emailInput.sendKeys(email); }
Тест выполняется в облаге sauselab или на seleniumServer локально.
В облаке тест успешно не находит элемент и выбрасывает exception
NoSuchElementException: no such element: Unable to locate element: {"method":"xpath","selector":".//*[@name='email2']"}
В то время как локально - открывается страница, драйвер ждет элемент и тест завершается без каких либо результатов не закрывая браузер.
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
В логе сервера
Caused by: org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"xpath","selector":".//*[@name='email2']"}
WARN - Exception: Unable to locate element: {"method":"xpath","selector":".//*[@name='email2']"}
Исключение есть.
В отчете с sauselab отражены верные результаты (нет элемента). В локальном - тест пройден успешно.
Возможно кто то сталкивался с подобным?