代码拉取完成,页面将自动刷新
同步操作将从 guanfuchang/AutoUAPI 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
auto-api 将用户端API接口HAR流量包转化成pytest脚本用例,进行流量回放。
当我们需要对一个前端项目进行接口自动化回归测试时,无论是写接口脚本还是使用postman,jmeter或者是使用一些自动化平台,都需要做大量的接口配置工作。
为了减少测试人员代码编写或接口配置工作,基于pytest脚本模板,编写了本项目,目的的实现:
C:.
│ conftest.py
│ requirements.txt
│ run_all.py # 运行主程序
│ settings.py
│
├─case_datas
│ │
│ ├─case_har # 将Fiddler中导出的xx.har文件放到这里
│ │ fht.har
│ │
│ └─case_py # 运行generate_case_confLists.py 脚本将xx.har解析成用例配置列表xx.py
│
├─test_suits # 运行 generate_case_pytest.py 脚本将xx.py 解析生成pytest用例文件test_xx.py
└─utils
│ case_handler.py # 请求,断言处理
│ generate_case_confLists.py # 将HAR文件解析成用例配置列表
│ generate_case_pytest.py # 将用例配置列表解析成pytest运行文件
generate_case_confLists.py
中的har文件路径.
运行后会生成用例配置文件case_datas/case_py/xxx.py,内容类似如下:case_list = [
{
"name": "mch_web_v1_login",
"method": "POST",
"api": "/mch_web/v1/login",
"playload": {
"uname": "fht20210621",
"passwd": "fht20210621"
},
"assert_list": [
[
"resp.status_code==200",
"接口响应状态码不等于200"
]
]
},
...
]
generate_case_pytest.py
中的case_list和py_test_file,运行后会生成pytest用例文件如test_suits/test_xxx.py 内容类似如下:from utils.case_handler import *
class TestIndex(object):
def test_mch_web_v1_login(self, login_session):
api = "/mch_web/v1/login"
playload = {'uname': 'fht20210621', 'passwd': 'fht20210621'}
method = "POST"
resp = req(api=api, session=login_session, data=playload, method=method)
validate(resp, [['resp.status_code==200', '接口响应状态码不等于200']])
...
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。