我有一个问题。之间的区别是:

@FindBy(id= "submit-button")
WebElement submitButton;

public void submitClick() {
    submitButton.click();
}




@FindBy(id= "submit-button")
WebElement submitButton;


public WebElement submitButton() {
    return submitButton;
}

public void submitClick() {
    submitButton().click;
}


使用PageFactory需要使用吸气剂吗?如果是,为什么要使用它?它不是仅通过initelements方法处理的吗?

最佳答案

Getter用于将private变量公开给其他类。

@FindBy(id="submit-button")
private WebElement submitButton;


如果将submitButton声明为private(如您所愿,它是您声明的任何其他类变量的类成员),则只能在当前类中使用。如果仅在当前类中使用它(如您应该那样,则按钮应仅是此页面对象的一部分),则不需要getter。

10-04 10:06