Java 如何从页面对象文件中分离web元素
因此,我遵循页面对象模型,拥有一个类(类a),该类具有特定页面的元素和函数。我还有一个使用类a的测试类。目前我至少有222个Web元素用于页面,因为页面有许多组件需要填写以进行回归测试。可以想象,页面对象有数百行代码,顶部只有web元素,底部只有函数。我想知道如何分离这些web元素,以便代码更干净 我看过guru99中关于如何将其放入和XML的文章,但文章中的方法并不能解决我的问题,因为我仍然需要初始化它们,或者到处都有“driver.find(locator from XML)”,因此代码仍然很混乱 页面对象类AJava 如何从页面对象文件中分离web元素,java,selenium-webdriver,pageobjects,Java,Selenium Webdriver,Pageobjects,因此,我遵循页面对象模型,拥有一个类(类a),该类具有特定页面的元素和函数。我还有一个使用类a的测试类。目前我至少有222个Web元素用于页面,因为页面有许多组件需要填写以进行回归测试。可以想象,页面对象有数百行代码,顶部只有web元素,底部只有函数。我想知道如何分离这些web元素,以便代码更干净 我看过guru99中关于如何将其放入和XML的文章,但文章中的方法并不能解决我的问题,因为我仍然需要初始化它们,或者到处都有“driver.find(locator from XML)”,因此代码仍然
public class PageA extends BasePage{
@FindBy(xpath="//*[some xpath]")
WebElement inputField1
@FindBy(xpath="//*[some xpath]")
WebElement inputField2
@FindBy(xpath="//*[some xpath]")
WebElement inputField3
public PageA(Webdriver driver){
super(driver);
}
public void method1(){
//do something
}
}
我希望能够在其他地方初始化222个Web元素,以便代码更干净更好的方法是创建您自己的元素,如按钮,链接,输入,等等 而不是常规的
WebElement
。使用如此通用的web元素API并不舒服。您可以向按钮或链接键入文本(发送键)
是否所有222个web元素都属于应用程序的单个页面?如果不是(很可能不是这样),将这些元素放在一个类中就违背了页面对象模型的全部目的。是的,所有222个元素都属于单个页面