浅谈selenium的Pageobject设计模式(二)--父类抽象

上一篇简介了,PO模式的设计思想:把页面作为一个类,把页面控件作为类的属性,把控件操作作为方法。

 本篇主要介绍PO模式中的父类抽象,与日志封装。

在简单的代码中可以发现,有一些方法我一直再复用,我们可以考虑把他们封装为一个父类。

在上一篇的代码中,都有用到这句:

find_element(By.XPATH, self.username_inputbox['locator_value'])
因此可以抽象出一个元素定位的方法出来,如下:

 

 同理,输入与点击为常用操作,也可以封装为元素操作的父类:

 再稍微扩展下,对于浏览器的最大化,最小化,退出,等操作,也可以封装在父类里如下:

 

 那现在我的登录代码就可以优化为:

 

 运行代码为:

 

 

请注意我红框的部分,有日志输入,相关原因是在父类中引用了相关日志代码,这样会让我们二次封装更加有意义。

 具体代码见上父类的相关封装代码,日志输入为:

 

具体日志封装代码,后续再做介绍。

posted @ 2020-05-04 17:45  华仔_2020  阅读(177)  评论(0)    收藏  举报