postman+newman+jenkins实战

参考文档

https://www.getpostman.com/docs/v6/postman/scripts/test_examples
https://www.jianshu.com/p/87553ee60cb7

1、安装插件

   1、 google插件- 谷歌应用商店 chrome//app   Postman Interceptor
                 - postman插件版
   2、 桌面版 app     postman
   3、抓取请求时,打开 Interceptor开关,再打开postman插件上的开关 即可

chrome上面操作:


image.png

postman插件上操作:


image.png

2 、设置变量参数化

  • 读取外部文件进行参数化 csv


    image.png
  • json 格式


    image.png
pre- request Script 中设置bindMobilePhone  环境变量名
//pm.environment.set("bindMobilePhone", data["bindMobilePhone1"]); 获取json中字段值 给这个环境变量
//pm.environment.set("bindMobilePhone", data.bindMobilePhone1);
postman.setEnvironmentVariable("bindMobilePhone",data["bindMobilePhone1"]);
body中对json格式请求进行参数化
{"bindMobilePhone":"{{bindMobilePhone}}","sex":"1”}

//获取response里面的tid

//获取response的body中生成的订单号,如果不是数组的话可直接取

var onlineTradeNo = JSON.parse(responseBody);

//console.log("onlineTradeNo",onlineTradeNo.data[0].tid);

console.log("onlineTradeNo", onlineTradeNo.data.tid);

3、执行用例

运行-点击Runner,可以按整个Collections运行,也可以选择到文件夹运行

image.png

4、newman 安装、执行

安装 neman: newman  -v 查看版本号 

 sudo npm install -g newman

 sudo   npm install  -g  newman-reporter-html    安装html形式报告

在控制台通过newman命令进行运行,需要导出两个json文件,一个是环境变量文件,另一个是coolection

image.png
image.png
newman run test2.postman_collection.json  --reporters cli,html --environment  test2.postman_environment.json  --reporter-html-export result.html

生成的报告文件:result.html

1、脚本执行: newman run 新零售代客下单场景.postman_collection.json --environment 线上环境.postman_environment.json
2、脚本执行,生成html报告  newman run 新零售代客下单场景.postman_collection.json --reporters cli,html --environment 线上环境.postman_environment.json --reporter-html-export result.html

5、集成到jenkins

  • 踩过的坑

之前一直可以用,今天登陆报错信息:jenkins java.net.BindException: Address already in use 一般这种是端口被占用

jenkins默认安装路径:/Applications/Jenkins/jenkins.war

通过控制台进入到/Applications/Jenkins 修改Jenkins端口java -jar jenkins.war --httpPort=8081

修改端口控制台运行出现以下信息:红色为初始化密码

image.png

这串密码需要复制下来,因为http://localhost:8080 访问jenkins时候需要填写初始密码,一步步操作

  • jenkins中新建项目,通过shell脚本执行用例

(1)构建一个自由风格的软件项目

image.png

(2)Build 中通过shell脚本去执行操作

image.png
 命令: newman run /Users/chenxiaoqin/Downloads/新零售代客下单场景.postman_collection.json --reporters cli,html --environment /Users/chenxiaoqin/Downloads/线上环境.postman_environment.json --reporter-html-export /Users/chenxiaoqin/Downloads/result.html

(3)运行时产生的问题

env: node: No such file or directory
Build step 'Execute shell' marked build as failure
Finished: FAILURE
或者报/usr/local/bin/node的问题
尝试解决方法:
1、jenkins中系统管理-环境变量中设置

image.png

2、.bash_profile export PATH=${PATH}:/node
3、安装到jenkins最新版本 下载最新jenkins.war 直接覆盖之前的版本 重启下
覆盖地址 jenkins-系统管理-系统信息中查看

image.png

最后终于完美解决,生成的报告如下

image.png

html格式报告如下:

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容