Postman+Newman+Jenkins+Git 接口自动化测试,持续集成解决方案

背景

产品经理、开发、业务人员或者其他业务线的小伙伴,经常有构造测试数据的需求,经常只会测试小伙伴,比如:“帮忙造个单”;不忙还好,忙的时候就没办法,毕竟日常测试工作量在那边,还要协助做其他,行业中商业化、开源化测试框架及工具极多,但实际运用需很大维护成本,产生价值价值低。如何真正"高效快速"、"低成本维护",经过调研落地使用对比。最终确认这个方案(Postman+Newman+Jenkins+Git)基于restful Api、RPC、操作数据库等,可以变相解决这些困难。


框架

案例

神州专车构造不同类型订单数据

构造结果数据 

案例

宝沃汽车、神州租车,构造车辆、车牌、订单、售后等数据

  • 配置入参

  •  选择脚本

  •  执行记录

具体

1、Postman

基于http/https协议接口,一款可视化构造客户端请求工具,虽然是商业化工具,但免费版提供的功能基本满足目前测试人员需求,能快速构建接口自动化测试脚本,用于场景流程回归、批量构造测试数据。

2、Newman

Postman的脚本运行器,能够不在使用postman工具情况下,非界面化运行脚本

可以生成html、json、xml格式的测试报告,可以进一步对这些测试报告进行解析处理。

关于postman、newman生成各种格式测试报告,查看:GitHub - liyinchigithub/Postman-super-run: 让Postman生成不同格式报告文件

3、Git

开源分布式版本控制系统,比较常见开放源代码的版本控制系统:SVN、Gitlab、Github等等,可以进行代码、脚本托管。

以gitlab为例

配置SSH流程

4、Jenkins

开源 CI/CD 持续集成、持续构建系统工具。

通过jenkins配置job参数,可以灵活自定义配置构建,实现各种外部服务功能执行,比如发送邮件、统计结果、数据处理等等。(需要你有一定代码基础)

5、测试报告

测试报告邮件正文显示内容。

(1)邮件发送

  • 使用自己的邮件发送插件

【第一版】

【第二版】

【第三版】

【第四版】

对接测试平台解析报告形成历史执行记录(个人自研)

爬取数据,我将接口自动化测试生成的报告,进行存储展示到前端页面

不推荐使用jenkins自带邮箱发送模板,因为无法参数化、邮件正文自定义效果很差

  • 下图是jenkins自带邮箱插件,仅能展示某些链接地址