页面对象模型 (POM) 是 Selenium WebDriver 中的一种设计模式,通过将网页上的 Web 元素和操作抽象为称为页面对象的可重用类来帮助增强测试维护和可扩展性。
使用 POM 的好处:
在此示例中,我们将把 WebElement 定位器分离到一个单独的类中,并使用 @FindBy 注释来提高清晰度和可维护性。
LoginPageElements.java
class LoginPageElements { WebDriver driver; @FindBy(id = "username") WebElement usernameField; @FindBy(id = "password") WebElement passwordField; @FindBy(id = "loginButton") WebElement loginButton; public LoginPageElements(WebDriver driver) { this.driver = driver; PageFactory.initElements(driver, this); } }
LoginPage.java:
import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.support.FindBy; import org.openqa.selenium.support.PageFactory; public class LoginPage { private WebDriver driver; private LoginPageElements elements; public LoginPage(WebDriver driver) { this.driver = driver; this.elements = new LoginPageElements(driver); PageFactory.initElements(driver, this); } public void enterUsername(String username) { elements.usernameField.sendKeys(username); } public void enterPassword(String password) { elements.passwordField.sendKeys(password); } public void clickLoginButton() { elements.loginButton.click(); } }
说明:
以上是什么是页面对象模型 (POM),它对 Selenium 自动化测试有什么好处? #面试问题的详细内容。更多信息请关注PHP中文网其他相关文章!