【原理】
搭建环境之前需要先理清楚各个环境的依赖关系,jenkins只支持windows命令行跟linux shell环境执行构建命令,而postman的测试脚本不能直接在命令行或shell环境执行,postman脚本需要有自己的执行环境,叫newman;而postman是基于javascript语言,所以newman环境还依赖于javascript的环境nodejs;所以整个过程是先搭建nodejs构造javascript环境,在搭建newman构造postman脚本运行环境,在集成到jenkins上;
通过postman编写接口测试的用例,最后将接口集导出,上传到git,再通过jenkins的配置,从git取导出的接口集json,trigger接口测试的job运行。我们可以跳过git的过程,导出的postman集合的文件直接通过newman运行的方式。
【环境准备】
1、node
node官网:https://nodejs.org/en/download/
我下载的是windows的64位msi文件,下载完成后双击运行,按默认安装步骤安装即可。
查看自己有没有安装node,运行cmd,输入node --version
2、newman
npm -g install newman
安装成功后查看newman版本号
【jenkins+postman+newman持续集成】
1、postman导出接口集,导出接口时建议重新命名
对于设置了环境变量的api,导json文件的同时,需要导出环境变量文件,否则api中的变量没有意义的。
2、newman运行导出的集合文件
newman run kshnew.postman_collection.json
可以看到newman运行接口的结果情况
3、jenkins集成
1)创建jenkins项目->构建中输入代码
2)构建内容中输入newman的运行命令,但是jenkins构建中的命令需要带newman的安装路径,否则会提示newman不是可执行命令。
C:\Users\lenovo\AppData\Roaming\npm\newman run kshnew.postman_collection.json
newman的默认安装路径是在C:\Users\lenovo\AppData\Roaming\npm
这是因为Jenkins的工作环境下与windows的默认环境有所区别,我们只需要配置一下Jenkins的环境变量即可
系统管理->管理节点->选择需要使用的主机->配置从节点
新建一个键值对列表,键名PATH,把npm和nodejs的路径放进来即可
3)编辑jenkins的触发器,可设置固定时间点自动执行;同时添加jenkins的邮件通知,将执行结果通知到邮件中,该步骤可参考我在接口测试中的其他相关文章。