Python接口框架 unittest实战思路一

2020-12-31  本文已影响0人  巴鶴

一、Page object 简称POM框架

1.POM提供了一种在UI层操作、业务流程与验证分离的模式,这使得测试代码变得更加清晰和高可读性
2.对象库与用例分离,使得我们更好的复用对象,甚至能与不同的工具进行深度结合应用
3.可复用的页面方法代码会变得更加优化
4.更加有效的命名方式使得我们更加清晰的知道方法所操作的UI元素。例如我们要回到首页,方法名命名为: gotoHomePage(),通过方法名即可清晰的知道具体的功能实现。

二、基于Page object模式,用的是unittest框架,思路如下:

1.config 目录(比方说数据库配置、项目路径、测试报告和邮箱配置)
2.Data:测试数据。后期准备把代码中会所有测试数据都整合到excel或者xml内,Data文件夹就是这个用处
3.PO:所有Page。以Base页面为基础(看下图分析,来理解PO)
4.Public:一些公共的方法,比如测试报告脚本,封装好的
5.Result:测试结果,包括测试报告和截图
6.TestCase:测试用例都放这儿
7.run_case:测试套件,利用HTMLTestRunner.py,输出测试报告到/Result下

三、实战思路及代码如下:

1、代码目录结构

代码目录结构.jpg

2、封装公共调用的代码,如请求头

2.封装请求头.jpg

3、接口用例代码参考,分正向和反向测试用例

接口代码样例.jpg

4、Python接口自动化需要对接口返回的Json文件,进行断言判断是否正确,但是Json文件有时包含多级嵌套,该如何断言???

a、例如图1 对返回的Json文件,3级目录包含"name":"金币赠送-1元"进行断言
b、例如图2 对返回的Json文件,5级目录包含""awardsName":"钻石","进行断言
图1.jpg 图2.jpg

5、使用unittest框架搭建自动发送邮件、自动执行测试用例脚本

执行测试用例-发送邮件和测试报告.jpg

6、在收到的邮件中查看接口测试报告

邮件和测试报告.jpg 优化测试报告.png
上一篇下一篇

猜你喜欢

热点阅读