Я создаю объекты страниц для навигации по сайту и рефакторинга хэшированного Java-проекта. У меня есть кусок кода, который вызывает кнопку JavaScript. Однако я не могу понять, как настроить это для использования в формате объекта страницы с @FindBy
Текущий объект страницы:
public CustomerLogin(WebDriver driver) {
PageFactory.initElements(driver, this);
}
@FindBy(how = How.ID, using = "username")
private WebElement userName;
@FindBy(how = How.ID, using = "password")
private WebElement password;
@FindBy(how = How.XPATH, using = "//*[@id=\\\"loginPage\\\"]/div[2]/div/div/div[1]/form/div[3]/div/input[1]")
private WebElement login;
public void logIn(String userName, String password) {
this.userName.sendKeys(userName);
this.password.sendKeys(password);
}}
Часть, в которую я не могу попасть:
WebElement element = webDriver.findElement(By.xpath("//*@id=\"loginPage\"]/div[2]/div/div/div[1]/form/div[3]/div/input[1]"));
JavascriptExecutor executor = (JavascriptExecutor) webDriver;
executor.executeScript("arguments[0].click();", element);
Это работает, если я помещаю его в тестовый скрипт, но не могу понять, как преобразовать его в версию объекта страницы.