我正在为 Java 开发 Selenium 中的测试自动化框架。我有不同的页面共享非常相似的功能的情况。我想出了用一些常见实现创建抽象类的想法,如下所示:
abstract class Foo{
// this is the problem, how to annotate below elements?
// at this point there is now way to know "how" and "using"
// @FindBy(how = ???, using = ???)
private WebElement element1;
// @FindBy(how = ???, using = ???)
private WebElement element2;
public void setElement1(String v){
this.element1.sendKeys(v);
}
public void clickElement2(){
this.element2.submit()
}
}
public class Bar extends Foo{
...
}
public class Baz extends Foo{
...
}
我想避免为每个页面实现相同的结构。有没有聪明的方法来做到这一点?我是Java的初学者。提前致谢。