我可以定义抽象页面中许多页面共有的WebElement吗?

时间:2018-05-21 14:28:45

标签: selenium-webdriver pageobjects

在我的测试自动化框架中,我有两个不同的页面,它们扩展了一个抽象页面。一些Web元素对于两个页面都是通用的。我的问题是,我应该在我的抽象页面中定义这些元素吗?或者我应该在使用它们的两个子类中复制它们的定义?

如果我不这样做,那么如何从我编写方法的子类级别访问抽象页面上定义的WebElement?如果我想坚持封装规则,它应该被声明为私有,因此从抽象页面的子类无法访问此元素。

我应该为AbstractPage上定义的每个WebElement创建一个getter吗?

1 个答案:

答案 0 :(得分:0)

我建议您只将函数放在与通用网页对应的抽象页面中。对我来说,这不包括任何定位器。我只想在每个页面中复制它们的定位器。单独页面上的元素不是相同的元素,它们碰巧具有相同的定位器。