接口持续集成

linux+jenkins+postman+newman

目的:接口测试持续集成。
Postman包含一个功能齐全的测试沙盒,可让您编写并执行基于JavaScript的测试。然后,您可以使用Newman(Postman的命令行集合运行器)与您的构建系统挂钩Postman。Newman允许您运行和测试Postman集合。

前提

jenkins只支持windows命令行跟linux shell环境执行构建命令,而postman的测试脚本不能直接在命令行或shell环境执行,postman脚本需要有自己的执行环境,叫newman;而postman是基于javascript语言,所以newman环境还依赖于javascript的环境nodejs;所以整个过程是先搭建nodejs构造javascript环境,在搭建newman构造postman脚本运行环境,在集成到jenkins上;

  1. 安装linux环境
  2. 安装jenkins服务(可参考之前的博客)
  3. 安装NodeJS

    NodeJs下载地址: https://nodejs.org/en/download/

安装步骤

~]# pwd
/app/
~]# tar xf node-v8.10.0-linux-x64.tar.xz
~]# mv node-v8.10.0-linux-x64 nodeJs
~]# cd nodeJs
添加软链接
~]# ln -s /app/nodeJs/bin/node /usr/bin/node
~]# node --version
v8.10.0   //版本需大于4.0版本
~]# ln -s /app/nodeJs/bin/newman /usr/bin/newman
~]# ln -s /app/nodeJs/bin/npm /usr/bin/npm
全局安装newman
~]# npm install -g newman 
安装完成后创建软链接 
~]# ln -s /app/nodeJs/bin/newman /usr/bin/newman
~]# newman --version
3.9.3

配置jenkins

直接使用脚本来运行newman

脚本的大致意思:

newman跑出html文件后,将html文件传输至http服务器上,然后网页访问。查看结果

newman run /iyunwen/server/node/newman.json -r html --reporter-html-export /iyunwen/server/node/newman.html
  • 输出报告文件
    • 支持报告格式:html,cli,json,junit
    • 实现方式:newman run Documents/codecard.postman_collection -r junit,html --reporter-html-export ~/Documents/cardcode.html --reporter-junit-export ~/Documents/dedao_cardcode.xml
    • 参数解释: -r -reporter-html-export 这两个文件就是生成的html、junit报告,html可以直接在浏览器中进行展示,xml文件即junit报告可以进行二次处理
      github地址:https://github.com/postmanlabs/newman#configuring-reporters
这里构建生成的html文件,上传至http服务器,这样就能够直观的去查看接口测试的结果了。

从上述结果中可以看出,运行测试之后,如果运行成功的话,newman会返回详细的测试结果,包含:接口名称(含别名)、请求方法(POST/GET等)、接口返回数据大小、完成请求所用时间,如果测试的接口有失败的情况下也会列出来。
posted @ 2018-03-15 14:41  dance_man  阅读(861)  评论(0编辑  收藏  举报