postman+newman+jenkins你想要的工具持续集成新鲜出炉啦!!!

2 篇文章 0 订阅
2 篇文章 0 订阅

1、工作原理

postman发送请求给服务器,服务器处理postman发送请求数据然后返回给postman。postman对返回内容进行加工处理,把格式化后的内容显示出来。

2、界面

请求构建器

Api响应

History选项卡

Collection集合

3、基础知识

(1)URL、method、Request Cookies、Request Headers和Request Body;

(2)Response Headers和Response Body

4、常用功能

Authorization(鉴权信息)最常见的鉴权:

Basic Auth:添加用户名密码,发送请求时自动添加到hearder中发送 Cookie管理器:

会自动保存jessionid或rememberMe等,也可手动删除 Script部分 ​ Pre-request Script:前置请求脚本 ​ 参数化 Tests ​ Tests中的代码段会在收到Response响应后执行

5、变量

环境变量 环境变量也有作用域 全局变量 token

6、断言语法

状态码 pm.test("Status code is 200", function () { pm.response.to.have.status(200); }); 字段名称 pm.test("Body matches string", function () { pm.expect(pm.response.text()).to.include("object already exists"); });

环境变量 var jsonData =JSON.parse(responseBody); postman.setEnvironmentVariable("Authorization",jsonData.data.token);

全局变量

var data=pm.response.json();

console.log(data.info[0].username) 可使用控制台打印,查看是否是自己想要的结果

pm.globals.set("username",data.info[0].username);

判断返回是否有某个元素 ①tests["判断返回的元素中是否有data"] =responseBody.has("data");

响应Cookie提取器一般用于提取jessionid或remeberme做为全局变量传入下一个接口保持会话,postman虽自动保存cookie相当于 jmeter的cookie管理器,但有些接口需传入:

var jessionid=postman.getResponseCookie('JSESSIONID').value

pm.globals.set("jessionid",jessionid);

前置条件Pre-request-Script的简单用法:用于发送请求之前的处理数据,比如:现在增加一个用户,需要运行N次,而且还要下一个接口需查询断言是否与刚刚增加的用户名相同,怎么办呢?

1.首先可以考虑时间戳:

var times=Date.now()

pm.globals.set("times",times)

2.并且添加到全局变量中,增加接口参数传递的body中使用username:“用户名${time}"传递,这样又能根据用户名查询又能保持增加 不会出现数据重复

那么模糊查询接口在test如何断言是否存在刚才自己增加的用户呢?

pm.test("断言增加的用户姓名", function () {

pm.expect(pm.response.text()).to.include("ddx"**+**pm.variables.**get**("times"));   //test引用全局变量需用get获取

});

前置条件Pre-request-Script:遇到接口传参需要加密如何去加密:例如MD5

var username=CryptoJS.MD5('admin').toString()

pm.globals.set("usernmae", username); //添加至全局变量 ,在接口传参的时候${usernmae}引用即可

7、测试报告

步骤一:

导出collection 导出环境变量

步骤二:Newman环境准备

步骤三:Newman语法

指令:newman run d:\test.postman_collection.json -e d:\test.postman_environment.json -d d:\testdata.csv —-export-environment d:\test

8、postman+jenkins+newman持续集成

1.环境安装:postman+newman+jenkins+jdk

2.postman导出测试集,环境变量,全局变量.json文件

3.建立一个jenkins项目

4.指定轮询时间

5.构建windows脚本执行命令

6.输出报告,需添加插件

运行出现的问题

postman使用ant

newman run C:\Users\ddx\Desktop\postman\boot项目用例.json -e C:\Users\ddx\Desktop\postman\环境变量.json -g C:\Users\ddx\Desktop\postman\全局变量.json -r html --reporter-html-export C:\Users\ddx\Desktop\postman\report.html

9、故障问题排查

i.防护墙问题,关闭防火墙 ii.代理配置问题 iii.SSL证书问题(HTTPS请求不能连接)可以关闭SSL iv.客户端证书问题 v. 错误的请求地址 vi.不正确的协议 vii.超时设置太短,可以适当增加 viii.无效的响应

参考:https://www.getpostman.com/docs/v6/postman

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值