1前言
接口自动化测试的工具很多,比如soapUI,postman,jmeter等等,但是这些通用的工具的可扩展性以及跟项目的契合度上并不是十分合适。
单有框架,还不足以让接口自动化更简化,自动化测试需要大量编码维护工作,为了改善这些问题,让接口测试更加流畅,数据维护更加简单,解放重复的劳动力,所以将其做成平台型的,可以让不懂技术的人都能使用,同时也让接口用例更加简单明了,易维护。
简单示范下使用流程。
开源地址如下,欢迎提bug或建议。
服务端:https://github-com/t880216t/manager-server
客户端:https://github-com/t880216t/manager-web
2框架
2-1框架简介
前端reactjs语言实现,后台由flask提供restful接口,基于pythonunittest测试框架,一键生成测试脚本,可视化的维护测试数据。
2-2框架介绍
1-基于Python+unittest测试框架
2-二次封装了urlib库,对于cookie及存在业务流程依赖的数据,做了保存处理,可连贯测试业务流程及不同的请求场景。
3-支持多项目、不同环境数据参数的扩展。
4-支持返回值的code、指定字段校验,提升测试准确性。
5-定时任务、即时任务执行,满足稳定接口自动化业务测试及临时接口的调试测试。
6-在线报告展示以及Email自动发送报告
2-3框架结构
结构图:分为前后台两套代码
3平台
3-1平台组件图
1新建用例

2生成测试任务

3执行并查看测试报告

3-2用例管理
在线编写自动化测试,让大家都能够参与测试
自动化用例编辑可视化,使自动化过程更加简单明了
针对需要连续流程获取的参数值,提供json类型的数据解析,获取指定的值。
3-2-1用例设计
平台用例执行流程图
3-3任务管理
3-3-1创建任务
根据测试用例,生成指定域名或测试机器ip的测试任务。
3-3-2执行任务
定时任务是在计划好的时间点自动执行指定的测试用例,每日执行
每次执行测试用例(包括手动执行和定时任务)之后,都会生成一份测试报告,发送给指定人。
3-3-3测试报告

可按测试时间及给定文件名,生成对应时间的html可视化报告,报告内容包含测试耗时,测试执行用例总数,执行成功、失败、出错用例数统计;还有单个用例的执行情况(ID,用例名称,服务端返回值,运行结果等)
3-3-4邮件通知
暂时发送人和接收人是写在代码里的,看需求再看是否需要做成前端配置。
4后续可做的功能
4-1用户管理
建立不同角色,对用例、任务的操作权限
4-2参数全局修改
常用常变的参数,提供全局修改功能,提高测试效率,提升用户体验。
4-3接入研发的API接口平台
实现接口与接口用例的一致性
4-4邮件内容及接收人定制化发送
丰富邮件正文,接收人参数化配置
5待解决的问题
1-上传文件接口脚本适配
2-多版本同时修改接口,执行接口用例。