最近研究selenium的paeg Object设计模式,用例和页面分开,各自继承page和Testcase类,老是出现初始化testcase失败的问题,后来决定吧无关的东西全部删除,终于理出了头绪;
QQ图片20180201162829.png
此处备注一下:
如果page页面的元素和方法都是用的是private WebElement elementdemo;public void methodname()的方式,testcase类中使用PageFactory.initElements(driver, QQloginPage.class)可直接返回页面的类对象,或者直接调用方法即可,如:
PageFactory.initElements(driver, QQloginPage.class).login(driver);
-----------------------------这是分割线---------------------------------
如果页面是使用其他方法批量初始化的,不返回页面的类对象,无法直接使用,可将page类的元素和方法设置为static,使用类名.方法名的方式直接调用;无需再创建page对象。如:
PageFactory.initElements(driver, QQloginPage.class);
QQloginPage.login(driver);
网友评论