这是一个使用python编写的简单测试框架,提供了对REST API进行测试的基本功能。该框架用于解决前后端分离式架构,服务端接口测试的痛点。可以帮助开发人员有效的进行业务逻辑的隔离测试。
- 测试case通过excel编写。
- 可以在运行时,进行测试步骤的传值。
- 支持返回结果的子集的验证。
pip install openpyxl
pip install jinja2
pip install jinja2schema
pip install oauthlib.oauth2
pip install requests_oauthlib
pip install request.auth
python sample.xlsx
.
├── sample.xlsx 测试case的模板文件
└── testmain.py 测试框架源代码文件
- Excel的DataSheet表示一个测试用例
- Excel的每行代表了一个测试步骤
- A: 测试接口步骤名字
- B: HTTP请求类型:POST,PUT,GET,DELETE,PATCH
- C: HTTP的URL: /test/endpoints
- D: HTTP参数的方式:(PATH,BODY) - PATH:代表路径的参数 - BODY:代表BODY体的JSON格式数据
- E: 参数数据
- F: HTTP请求返回值:200,或者500等
- G: HTTP请求返回值的期待值
- H: HTTP请求返回值中需要获取的值
{"expect_value":["key1","key2","key3"}
验证的返回结果
{
"key1": {
"key2": {
"key3": "expect_value"
}
}
}
{"var": ["key1","key2","key3"]}
var 代表的变量,存储了通过["key1","key2","key3"]
获取的数据
var 变量会存储在测试环境中,用于下一个步骤需要数据的传递
{"data": "数据 {{ var }}" }
{{var}}
代表了一个从其他测试步骤中获取的值