postman+newman+Jenkins自动化测试部署方法

     最近试着将postman测试脚本接入到Jenkins中实现自动执行。过程遇到一些不好解决的问题,幸得一个博主的点播,终于成功。本着分享的精神,把整个配置的过程整理了一下方便以后查看,也方便其他同学参考。

    我这里之前安装过postman、node.js、Jenkins,过程也比较简单,所以不再整理一遍啦。

一、 Postman测试脚本

1. 设置请求参数

选择请求方式,get或post,将URL填入;

当为post请求时,需填写参数:选择body下的x-www-form-urlencoded,依次填写key与value

2. 请求参数调用变量

     若要获取接口返回结果,作为后续其他接口的参数,需将其设为变量,在Tests中填写以下函数,在调用时,使用{{access_token}}:

*********************************************************

//保存响应结果json

var jsonData = JSON.parse(responseBody);

//将响应结果中的token值保存为全局变量access_token 

//最新版本pm环境变量设置使用方法

pm.globals.set("access_token",jsonData.token);

*********************************************************

       调用内置的变量,比如时间戳,使用{{$timestamp}}

3. 加入断言验证

       通过断言,对接口返回结果进行验证。在Tests中添加以下函数:

*********************************************************

//1.验证返回状态码是否是200

pm.test("Status code is 200",function () {

   pm.response.to.have.status(200);

});

//2.验证返回结果中指定只是否符合预期,reports[0].status.configuredState标识reports中第一个数组下,status里configuredState的值

pm.test("assertconfiguredState",function(){

   pm.expect(pm.response.json().reports[0].status.configuredState).to.eql("STARTED");

});

*********************************************************

4. 保存到收藏夹

       Ctrl+s,弹出以下页面,输入request name,request description,选择collection,也可以创建新的collection,点击【save】即可保存。


5. 批量执行收藏夹中请求

       点击收藏夹右侧三角,弹出菜单,点击【Run】;

       弹出运行设置页面,设置运行参数,及运行的请求,点击【Run】即可批量执行。

6. 导出postman中的测试脚本

       点击收藏夹右侧三角,弹出菜单,点击【…】按钮,点击【export】,弹出导出页面,点击【export】,选择保存路径即可

二、下载newman

1. 需首先下载安装node.js

    在node.js官网上下载安装包,一步步执行即可。

2. 在node.js中下载安装newman

    下载newman用cpm install -g newman试了很多次都是ERR,最后下载了cnpm(查了下,他是淘宝团队将npm的插件同步到中国服务器,通过这个镜像可以稳定的下载资源),用cnpm的命令去下载newman就很顺利了,如下:

npm install cnpm -g --registry=https://registry.npm.taobao.org

cnpm install -g newman

3. 在newman中执行用例

      Cmd执行以下命令,xx\xx.json为postman导出用例的绝对路径(如果是在命令行当前的路径下,填写相对路径也可以); -k表示禁用严格ssl(在这里遇到一个问题,postman里正常执行,但newman里一直报找不到第一证书的错误,最后终于在一个博客里找到解决方案,加一个-k参数,禁用严格的ssl):

newman runE:\PostmanData\server-manager-login.json -k

4. newman生成html报告工具

       若要生成html的测试报告,可安装插件,在cmd中输入以下命令:

cnpm install -g newman-reporter-html

       输入以下命令,执行测试并将测试结果生成HTML报告输出到指定目录下,不过这样控制台中就不会输入任何日志了:

newman runE:\PostmanData\server-manager-login.json -k --reporters html--reporter-html-export E:\Po stmanData\report\

三、配置Jenkins

1. 创建并配置项目

       创建一个自由风格的项目,在【构建】中选择【Execute Windows batch command】,输入以下命令,点击【保存】:

newman runE:\PostmanData\server-manager-login.json -k

2. 构建项目,执行测试

       点击【build now】执行构建,在【控制台输出】中可以看到运行的日志

3. 增加HTML报告的显示

       在【构建】中修改命令如下:

newman runE:\PostmanData\server-manager-login.json -k --reporters html--reporter-html-export E:\PostmanData\report\report.html

       在【构建后操作】中添加【publish HTML reports】,并输入html报告所在的路径、html报告名称,以及在Jenkins中报告的标题。

      构建后,在项目首页上,就能点击看html的测试报告了。但是这个报告可观性不强,Jenkins中的控制台也没有日志输出,所以我最后又把html报告删掉了(#^.^#)

    至此一个简单的postman脚本集成到Jenkins中自动执行测试的流程就走通啦!

你可能感兴趣的:(postman+newman+Jenkins自动化测试部署方法)