我正在尝试将PageObject
设计模式与我的 Selenium 测试一起使用,并且我有以下一组 Page 类:
- 一个
PageObject
基类,用于跟踪 WebDriver 和站点的基本 URL。它还具有WebElement
显示在站点的每个页面上的私有资源,例如菜单栏和侧栏链接。有一些公共方法可以访问这些资源,例如登录和注销。 UserRolePage
扩展的类PageObject
。根据登录用户的角色,这些类还有其他私有WebElements
的,一旦用户登录,它们就会在每个页面上持续存在。还有一些公共方法可以访问这些资源。UserLandingPage
扩展类的特定页面(例如)UserRolePage
。这些都有自己的特定页面WebElements
和操作。
当我UserLandingPage
使用该方法创建一个新的:
UserLandingPage userLanding = PageFactory.initElements(driver, UserLandingPage.class);
哪个WebElements
被填充?只是对UserLandingPage
类可见的那些,还是PageFactory
以某种方式查看所有基类并填充这些 WebElement?