PageObject设计模式进行自动化用例的设计方法

关于PageObject模式进行自动化代码的编写:

        PageObject简而言之理解就是:一个页面作为一个类,页面中所有的元素均作为类中的方法

当然PageObject也是一种分层思想。

以Python登录163邮箱举例:

Clipboard Image.png

BrowserDriver作为打开浏览器驱动的一个方式

Page是所有的页面组成的一个包

Testcase就是实际的测试用例

1、Page中存在一个基本的page类,所有的页面类都需要继承的类:这样写的好处就是元素一旦修改,UI界面发生变化,我仅需修改我的page就行,不影响我所有测试用例。

(1)base.py:

Clipboard Image.png

 

(2)Firstpage.py中继承了Page类:

Clipboard Image.png

在FirstPage中将测试用例中需要的元素全部以函数方法的形式写出来,下次使用这些元素直接调用即可。

2、浏览器操作:

BrowserDriver.py:指定需要操作的浏览器,如果我需要测试所有用例中的兼容性,我仅需要改driver即可,当然在用例中,所有的driver需要使用这个方法,而不是直接webdriver.xxx

Clipboard Image.png

3、编写用例:在以上准备好的时候,直接操作已经定义好的页面元素,无须再次定位

test_login_firstpage_case.py:

Clipboard Image.png

4、用discover和HTMLtestrunner批量搜索测试用例和生成测试报告

Clipboard Image.png

posted @ 2017-09-07 11:38  来呀快活吧  阅读(338)  评论(0编辑  收藏  举报
cs