我可以在抽象页面中定义一个对许多页面通用的 WebElement 吗?
Can I define a WebElement that is common to many pages in Abstract Page?
在我的测试自动化框架中,我有两个不同的页面,它们扩展了一个抽象页面。一些网页元素对这两个页面都是通用的。我的问题是,我应该在我的 Abstract Page 中定义这些元素吗?或者我应该在使用它们的两个子类中复制它们的定义吗?
如果我不这样做,那么我如何从我正在编写方法的子类级别访问抽象页面上定义的 WebElement?如果我想坚持封装规则,它应该被声明为私有的,这样抽象页面的子类就无法访问这个元素。
我应该为 AbstractPage 上定义的每个 WebElement 创建一个 getter 吗?
我建议您只将与通用网页相对应的功能放在抽象页面中。对我来说,那不包括任何定位器。我会在每个页面中复制他们的定位器。不同页面上的元素不是同一个元素,它们只是恰好具有相同的定位符。
在我的测试自动化框架中,我有两个不同的页面,它们扩展了一个抽象页面。一些网页元素对这两个页面都是通用的。我的问题是,我应该在我的 Abstract Page 中定义这些元素吗?或者我应该在使用它们的两个子类中复制它们的定义吗?
如果我不这样做,那么我如何从我正在编写方法的子类级别访问抽象页面上定义的 WebElement?如果我想坚持封装规则,它应该被声明为私有的,这样抽象页面的子类就无法访问这个元素。
我应该为 AbstractPage 上定义的每个 WebElement 创建一个 getter 吗?
我建议您只将与通用网页相对应的功能放在抽象页面中。对我来说,那不包括任何定位器。我会在每个页面中复制他们的定位器。不同页面上的元素不是同一个元素,它们只是恰好具有相同的定位符。