版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6章PO模式《自动化测试应用教程(Web+App)》学习目标/Target了解PO模式的简介,能够简述PO模式的概念掌握PO模式的案例实战,能够测试TPshop开源商城网站的登录功能章节概述/Summary在测试Web项目的过程中,由于在Web项目中需要测试的页面比较多,有时会出现多个页面中代码冗余的情况,例如多个页面的测试代码中都有定位同一个元素的代码,如果定位的元素发生了变化,则需要修改多个页面中定位该元素的代码,这样不仅增加了测试人员的工作量,而且不便于代码的维护。为了提高测试代码的可维护性和可读性,可以使用PO模式将测试代码中的冗余代码进行封装并分层。本章将对PO模式的内容进行详细讲解。目录/Contents01PO模式简介02PO模式的案例实战PO模式简介6.16.1.1PO模式的概念
先定一个小目标!了解PO模式的简介,能够简述PO模式的概念6.1.1PO模式的概念PO(PageObject,页面对象)模式主要是将程序中的页面元素定位和元素操作封装成一个页面类,在该类中实现页面对象和测试用例的分离,该模式的核心是对页面元素的封装,从而减少程序中的冗余代码,提高测试代码的可维护性和可读性。6.1.1PO模式的概念对象库层用于封装定位页面元素的方法操作层用于封装对元素进行操作的方法业务层用于封装将一个或多个元素操作组合起来完成一个业务功能的方法PO模式6.1.2PO模式的优缺点
先定一个小目标!了解PO模式的优缺点,能够简述PO模式的优点和缺点6.1.2PO模式的优缺点当测试代码使用PO模式后,会对测试程序中的重复代码抽取出来,放在一个工具类中,便于后续对这些代码进行复用,从而提高测试代码的复用性,减少程序中的冗余代码。(1)提高代码的复用性PO模式与传统模式相比有以下3个优点,具体介绍如下。PO模式可以将定位页面元素与页面操作的代码封装在指定的页面对象中,并且测试用例与页面对象也是分离的状态,这样更容易让测试人员快速找到指定页面的代码和测试用例,从而提高了代码的可读性和可维护性。(2)提高代码的可读性和可维护性6.1.2PO模式的优缺点PO模式减少了测试程序中的代码冗余,从而减少了测试人员的工作量,同时PO模式还采用了业务流程与页面元素操作分离的模式,使测试代码便于维护和扩展。如果后续想要修改或增加测试用例,则不需要耗费很多时间和人员去修改或扩展测试代码,从而降低测试程序的维护成本。(3)降低程序的维护成本6.1.2PO模式的优缺点任何事物都有两面性,PO模式也不例外,它除了有3个优点之外,还有一个缺点,即PO模式会造成测试代码结构比较复杂,从而导致一次性的脚本代码效率不高,这是由于测试代码根据PO模式的流程进行了模块化处理。PO模式的案例实战6.26.2.1商城登录功能简介
先定一个小目标!了解商城登录功能简介,能够编写3条功能的测试用例6.2.1商城登录功能简介当对TPshop开源商城网站的登录功能进行自动化测试时,首先需要进入商城首页,单击商城首页左上角的“登录”链接,即可进入到登录页面,如下图所示。6.2.1商城登录功能简介测试人员在测试登录页面中的登录功能时,首先需要设计该功能的测试用例,例如,登录成功、密码错误、验证码错误、账号不存在等。6.2.1商城登录功能简介ID优先级测试功能测试标题预置条件步骤描述测试数据预期结果实际结果01L0登录账号不存在打开商城首页,进入登录页面1.输入账号;2.输入密码;3.输入验证码;4.单击“登录”按钮账号码:123456验证码:8888登录失败,页面提示:账号不存在02L0登录密码错误打开商城首页,进入登录页面1.输入账号;2.输入密码;3.输入验证码;4.单击“登录”按钮账号码:1234567验证码:8888登录失败,页面提示:密码错误03L0登录用户名不能为空打开商城首页,进入登录页面1.输入密码;2.输入验证码;3.单击“登录”按钮账号:密码:123456验证码:8888登录失败,页面提示:用户名不能为空登录功能的3条测试用例的相关信息如下表所示。6.2.2创建工具类UtilsDriver
先定一个小目标!掌握工具类的创建,能够创建UtilsDriver工具类6.2.2创建工具类UtilsDriver当在程序中测试商城登录功能时,需要多次获取浏览器驱动对象、弹出框消息和退出浏览器驱动对象,为了减少程序中的冗余代码,需要将获取浏览器驱动对象的方法、获取弹出框消息的方法和退出浏览器驱动对象的方法抽取出来存放在创建好的UtilsDriver类中,该类被称为工具类,它可以存放后续程序中需要多次使用的与浏览器驱动有关的其他方法。6.2.2创建工具类UtilsDriver首先在程序中创建utils.py文件,然后在该文件中创建工具类UtilsDriver,具体代码如下。[单击查看源码]6.2.3创建基类BasePage与BaseHandle
先定一个小目标!掌握基类的创建,能够创建BasePage与BaseHandle基类当测试TPshop开源商城网站的登录功能时,会用到商城的首页和登录页面。在测试程序中,PO模式会将商城首页和登录页面中的逻辑代码分为对象库层、操作层和业务层,由于商城首页和登录页面的对象库层和操作层有相同的代码,例如,定位元素的代码、元素输入的操作代码等。为了减少程序中的冗余代码,需要将商城首页和登录页面中相同的代码抽取出来存放在创建好的BasePage类和BaseHandle类中,这2个类被称为基类。6.2.3创建基类BasePage与BaseHandle6.2.3创建基类BasePage与BaseHandle首先在程序中创建base文件夹,然后在该文件夹中创建base_page.py文件,最后在base_page.py文件中分别创建对象库层的基类BasePage和操作层的基类BaseHandle。
base_page.py文件的具体代码如下。[单击查看源码]6.2.4商城首页的PO模式
先定一个小目标!掌握商城首页的PO模式,能够使用PO模式编写商城首页的逻辑代码6.2.4商城首页的PO模式由于测试商城登录功能时,会涉及商城首页页面,所以需要在商城首页的逻辑代码中使用PO模式,按照PO模式的3层架构,将商城首页中的代码分别封装为对象库层、操作层和业务层,每个层都是一个类。6.2.4商城首页的PO模式首先在程序中创建page文件夹,然后在该文件夹中创建page_home.py文件,最后在page_home.py文件中分别创建PageHome类、HandleHome类和HomeProxy类,
page_home.py文件的具体代码如下。[单击查看源码]6.2.5登录页面的PO模式
先定一个小目标!掌握登录页面的PO模式,能够使用PO模式编写登录页面的逻辑代码6.2.5登录页面的PO模式登录页面的PO模式与商城首页的PO模式类似,都是按照PO模式的3层架构,将页面中的代码分别封装为对象库层、操作层和业务层,每个层都是1个类。6.2.5登录页面的PO模式首先在程序的page文件夹中创建操作登录页面的文件page_login.py,然后在该文件中分别创建LoginPage类、LoginHandle类和LoginProxy类,
page_login.py文件的具体代码如下。[单击查看源码]6.2.6创建登录功能的测试用例
先定一个小目标!掌握登录功能测试用例的创建,能够编写登录功能的测试用例代码6.2.6创建登录功能的测试用例首先在程序中创建一个scripts文件夹,然后在该文件夹中创建test_login.py文件,最后在test_login.py文件中创建测试类TestLogin,在该类中根据登录功能的3个测试用例,定义了3个测试方法,分别是test_login_01()、test_lo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五版企业清算注销及税务筹划合同3篇
- 二零二五版供配电设施安全风险评估与治理合同3篇
- 二零二五版锅炉安装与能源审计服务合同范本3篇
- 二零二五版阿拉尔经济技术开发区绿色建筑推广应用合同3篇
- 二零二五版高职高专土建专业校企合作项目合同3篇
- 二零二五版二手车买卖纠纷处理合同3篇
- 二零二五版公益项目合同担保法合规合同3篇
- 二零二五版专业打印设备升级与维护服务合同2篇
- 二零二五版电子商务平台食品农产品溯源合同3篇
- 二零二五版建筑材料租赁合同质量检测与验收标准合同3篇
- 2025年工程合作协议书
- 2025年山东省东营市东营区融媒体中心招聘全媒体采编播专业技术人员10人历年高频重点提升(共500题)附带答案详解
- 2025年宜宾人才限公司招聘高频重点提升(共500题)附带答案详解
- KAT1-2023井下探放水技术规范
- 驾驶证学法减分(学法免分)题库及答案200题完整版
- 竣工验收程序流程图
- 清华经管工商管理硕士研究生培养计划
- 口腔科诊断证明书模板
- 管沟挖槽土方计算公式
- 国网浙江省电力公司住宅工程配电设计技术规定
- 烟花爆竹零售应急预案
评论
0/150
提交评论