- Python自动化简述
- 接口测试的本质:
- 自动化测试脚本
- 1.接口自动化测试的成长路线
- 2.用好测试工具 Postman
- 3.用好测试脚本Python + requests
- 4.用好测试框架PyTest
- 接口测试必备技巧
Python自动化简述
接口测试的本质:
遵循接口的协议,完成数据的收发,进行断言:
- 收发
- 断言
接口自动化测试的本质:
- 自动化数据收发:requests #对数据进行收发,http 协议
- 自动化数据断言: resposes-validator # 进行响应的数据断言,结果校验
自动化测试脚本
安装依赖
pip install requests resposes-validator
2.使用依赖
from requests import request
from responses_validator import validator
#1.发送请求
resp = request(method='get',url='url ')
#HTTP协议中,响应会得到三个数据
# - 状态码:
# - 响应头: (可以忽略
# - 响应正文:
print(rsp)
#2.断言响应
is_pass = validator(resp,status_code=200,text="*wenbe*")
print(is_pass)
if is_pass:
print('测试通过')
else:
print('测试失败')
3.断言
预期结果 和 实际结果 进行判断
如果断言成功,什么都都不会发生,如果断言失败,则会抛出 异常(停止执行,显示调用栈,向上冒泡)
不需要对判断执行判断
动态内容不好断言
复杂用法:
重点 1 接口关联
请求 A 和响应 A,与请求 B 建立联系, 从而和响应 B 建立联系
构造–完成代码
请求 A:
发起请求
断言
数据提取
pytest 测试框架
安装依赖
使用依赖
文件名 test_
函数 test_
复杂用法
每个接口使用单独用例
1.接口自动化测试的成长路线
1.测试工具:postman\fillder
2.测试脚本:python(requests)\java(HTTPClient)
3.测试框架: pytest\testing
4.测试平台:django(pytest)\spring boot(jmeter)
2.用好测试工具 Postman
接口(API):程序和程序之间的 通信规则
短链接:HTTP
长链接:TCP
HTTP:
- request 请求: 客户端 发送数据到 服务端
- response 响应: 服务端 回复数据给 客户端
postman 可以作为接口测试的工具
需求:
- 根据需求,构建请求,并且验证响应是否正确
接口文档: (看懂接口文档)
- 列出每一个接口的请求要素
- 方法
- 地址
- 鉴权
- 参数
地址 + 方法 :共同构成接口的端点
1.表单:form-urlencoed
2.json
用例:
- 反向用例:使用错误的方式,必然得到错误的结果
-
正向用例:使用正确的方式,才会得到正确的结果
- 响应
- 状态码
- 响应头
- 响应正文
3.用好测试脚本Python + requests
请求: requests.request
响应: resp
4.用好测试框架PyTest
使用门槛:封装函数
编程的成长路线:
- 基本语法规则
- 基础数据结构
- 流程控制:
- 条件
- 循环
- 函数封装
- 面向对象封装
- 模块封装
- 第三方模块
安装
1.创建用例
1,test_开头的文件
2.test_开头的函数
3.使用断言
2.参数化测试
` @pytest.mark.parametrize()`
3.框架的能力
- 使用ymal编写框架:
- 记录接口请求过程:能够回顾、排查接口BUG的原因
- 生成美观的测试报告
接口测试必备技巧
- 接口关联
- 数据驱动
1.接口关联
提取变量
中高级测试人员:从接口响应中提取变量,以便其他接口使用
- 提取变量
- 使用变量
f'bear {token}' f :字符串、变量拼接
2.数据驱动
Data Driver Test 数据驱动测试
参数化测试
当我们需要对同一个接口,进行多次、重复、反复的测试时
代码具备接收不同数据的能力,这个能力称之为参数化
具备函数的封装能力