接口自动化测试
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
12
BY:MLP
Requests请求库
Requests支持HTTP连接保持和连接池,支持使用cookie保持会话,支 持文件上传,支持自动响应内容的编码,支持URL和POST数据自动编码。 在python内置模块的基础上进行了高度的封装,从而使得python进行 网络请求时,使用Requests可以完成浏览器的所有操作。
接口自动化框架分享
1
分层自动化
2
框架结构
3
Requests库
4
数据驱动
5
生成测试报告
2
By:MLP
软件的分层
软件系统分层
3
By:MLP
分层自动化
三层结构
UI代表页面级系统测试 service代表服务业务测试(接口测试) unit代表单元测试
4
分层自动化
三层结构
1.单元测试: 项目unit test主要还是开发人员自己来编写的,这一层发 现并解决问题付出的成本相对来说最低,自动化用例的 维护成本也不高,总的来说自动化测试的投入产出比最 高。 2.接口测试: 接口测试相对于单元测试更偏重于业务,测试人员在了 解接口工作方法的同时也要了解各接口之间的业务联系。 接口测试如果覆盖面足够多的话,服务端基本的业务功 能和流程基本上是可以保证的。
setUp:进行测试前的初始化 工作。
tearDown:执行测试后的清除 工作。 4.测试集是测试用例的集合,用 于批量执行测试用例。 5.执行器用来执行测试用例,并 且把测试结果呈现出来。
11
BY:MLP
数据驱动工具:DDT
DDT示例 python 的unittest 没有自带数据驱动功能。 所以使用unittest,同时又想使用数据驱动,那么就可以使用DDT来 完成。
执行完测试用例之后,自动将生成的测试报告发送给指定的接收人
18
BY:MLP
结束
谢谢观看
19
BY:MLP
3.UI测试: 最接近用户的测试,但是它也是最难实现自动化的,因为它 涉及到了几乎所有的用户体验相关的情况。 在做UI自动化时适合的情况: ①UI已经固定,或者的改动较小 ②只做最核心的功能的自动化覆盖,脚本可维护性尽可能 提高
5
BY:MLP
6
BY:MLP
框架结构 excel+requests+unittest+ddt实现接口自动化测试框架
是一系列的测试用例,或测试套件,或两者皆有。它用于归档需要一起执行的测 试。
• 测试运行器(test runner) 是一个用于执行和输出测试结果的组件。这个运行器可能使用图形接口、文本接
口,或返回一个特定的值表示运行测试的结果。
10
Βιβλιοθήκη Baidu
BY:MLP
Unittest使用
1.测试文件必须先 import unittest 2.测试类必须继承 unittest.TestCase 3.测试方法必须以“test_”开头
13
BY:MLP
对象类型 数组类型
14
BY:MLP
Python 中针对JSON的处理提供了便捷的第三方库支持: json
JSON编码
JSON解码
运行结果:
15
BY:MLP
生成测试报告
HTMLTestRunner
Demof i ᕡ f i ¼ᄍ ᐏ
16
BY:MLP
生成测试报告
17
BY:MLP
发送邮件
• 测试脚手架(test fixture)
表示为了开展一项或多项测试所需要进行的准备工作,以及所有相关的清理操作。
• 测试用例(test case) 一个测试用例是一个独立的测试单元。它检查输入特定的数据时的响应。
unittest提供一个基类:TestCase ,用于新建测试用例。
• 测试套件(test suite)
7
BY:MLP
流程图
8
BY:MLP
实现功能
1.支持单一接口和多接口业务流程测试 2.数据写在excel中,代码做封装,两部分相互独立 3.编写测试用例不需要掌握代码 4.可以直接在excel内实现接口之间的关联和接口断言
9
BY:MLP
Unittest是Python语言自带的单元测试框架
基本概念