Я хочу найти и щелкнуть элемент в структуре объектной модели страницы, используя PageFactory. Я не хочу использовать Thread.sleep (). Неявное ожидание не поможет, оно дает «NoSuchElementException». Пожалуйста, дайте мне знать, как использовать Explicit Wait или Fl unet Wait в этом отношении.
Мой класс локатора выглядит следующим образом: -
public class Locators {
public WebDriver driver;
@FindBy(css = "a#welcome")
@CacheLookup()
WebElement welcome_link;
@FindBy(linkText = "Logout")
@CacheLookup()
WebElement logout_btn;
public Locators(WebDriver driver) {
this.driver = driver;
PageFactory.initElements(driver, this);
}
public void clickonWelcome() {
welcome_link.click();
}
public void clickOnLogout() {
logout_btn.click();
}
}
Мой класс stepDefinition выглядит следующим образом: -
public class OrangeHRMSteps {
public WebDriver driver;
Locators locator;
@Then("Click on Welcome Link")
public void click_on_Welcome_Link() {
locator.clickonWelcome();
}
@Then("click on Logout link")
public void click_on_Logout_link() {
locator.clickOnLogout();
}