postman 断言
/* 设置全局变量 */
var jsonData =JSON.parse(responseBody);
pm.globals.set("ruleCode", JsonData.data.ruleCode);
/* 断言使用全局变量 */
role_code = pm.globals.get("ruleCode")
tests["role code right "] = jsonData.data.ruleCode === role_code;
/* 第一种写法:*/
//断言
pm.test("message等于'操作成功'", function () {
var jsonData = pm.response.json();
console.log(jsonData.status);
pm.expect(jsonData.message).to.eql("操作成功");
});
pm.test("status等于'SUCCESS'", function () {
var jsonData = pm.response.json();
console.log(jsonData.status);
pm.expect(jsonData.status).to.eql("SUCCESS");
});
pm.test("response is ok", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.code).to.eql("OK");
});
pm.test("检查Response Body 是否包含'doctor'字符串", function () {
pm.expect(jsonData.responseBody[0].employJobTitle).to.eql("doctor");
});
pm.test("检查Response Body 是否包含'销售'字符串", function () {
pm.expect(pm.response.text()).to.include("销售");
});
pm.test("检查Response Body是否等于字符串...", function () { pm.response.to.have.body('{"status":"SUCCESS","code":"200","message":"查询成功","detailMessages":[],"responseBody":[{"userId":4,"ename":"张三","staname":"销售"}]}');
});
/*响应头是否存在Content-Type参数*/
pm.test("响应头存在Content-Type参数", function () {
pm.response.to.have.header("Content-Type");
});
/*返回时间少于200ms*/
pm.test("Response time is less than 200ms", function () {
pm.expect(pm.response.responseTime).to.be.below(200);
});
/*状态码是200*/
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
/*成功的POST请求状态码*/
pm.test("Successful POST request", function () {
pm.expect(pm.response.code).to.be.oneOf([200,201]);
}); //[200,201]闭区间
/*if判断*/
var data = JSON.parse(responseBody);
if(data.status==="SUCCESS"){
if(data.responseBody === null){
// tests["responseBody is null"+"返回值:"+JSON.stringify(data)] = false;
tests["返回值错误"] = false
}
else{
tests["OK"] = true;
}
}
else {
tests["status not SUCCESS"+"返回值:"+JSON.stringify(data)] = false;
}
/* for循环 */
// 获取actions的长度
var jsonData =JSON.parse(responseBody);
var num = jsonData.data.actions.length;
//通过for循环获取每个actions内每个id的值
for(var i=0;i<num;i++){
var aid = jsonData.data.actions[i].id
// 当aid为1时,断言actions内容是否正确
if(aid = 1){
tests["actions right "] = jsonData.data.actions[i].actions===actions;
}
}
/*第二种写法:*/
1.检查response的body中是否包含字符串:
tests["body是否含name"] = responseBody.has("name");
2.检查JSON的值:
var data = JSON.parse(responseBody);
tests["Your test name"] = data.value === 100;
var data = JSON.parse(responseBody);
tests["字段返回是否hello"] = data.字段 === "hello";
3.response的响应时间小于200ms:
tests["Response time is less than 200ms"] = responseTime < 200;
4.状态码为200:
tests["Status code is 200"] = responseCode.code === 200;
// 获取n天后的日期
function GetDateStr(n) {
var dd = new Date();
dd.setDate(dd.getDate()+n);//获取n天后的日期
var y = dd.getFullYear();
var m = dd.getMonth()+1;//获取当前月份的日期
var d = dd.getDate();
return y+"-"+m+"-"+d+'T00:00:00+0800';
}
pm.globals.set("startDate_reg",GetDateStr(1) ); var myDate = new Date();//获取系统当前时间
1 myDate.getYear(); //获取当前年份(2位)
2 myDate.getFullYear(); //获取完整的年份(4位,1970-????)
3 myDate.getMonth(); //获取当前月份(0-11,0代表1月)
4 myDate.getDate(); //获取当前日(1-31)
5 myDate.getDay(); //获取当前星期X(0-6,0代表星期天)
6 myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
7 myDate.getHours(); //获取当前小时数(0-23)
8 myDate.getMinutes(); //获取当前分钟数(0-59)
9 myDate.getSeconds(); //获取当前秒数(0-59)
10 myDate.getMilliseconds(); //获取当前毫秒数(0-999)
11 myDate.toLocaleDateString(); //获取当前日期
12 var mytime=myDate.toLocaleTimeString(); //获取当前时间
13 myDate.toLocaleString( ); //获取日期与时间
postman 断言的更多相关文章
- postman 断言解析
最近在学习postman官方文档, 顺势翻译出来,以供学习! postman断言是JavaScript语言编写的,在postman客户端指定区域编写即可. 断言会在请求返回之后,运行,并根据断言的pa ...
- postman断言作用及怎么使用
这段时间一直在学习postman,在请求中使用断言,很多人不是很了解postman断言,其实呢,postman断言是JavaScript语言编写的,在postman客户端指定区域编写即可. 1.设置环 ...
- postman断言分析
最近测试中用到postman,使用后就简单总结下常用的断言,下面带图的自己最常用的,其他的没怎么用. postman断言是JavaScript语言编写的,在postman客户端指定区域编写即可. 断言 ...
- postman断言
较旧的写作邮差测试风格 较旧的Postman测试编写风格依赖于特殊tests对象的设置值.您可以为对象中的元素设置描述性键,然后说明它是真还是假.例如,tests["Body contain ...
- postman 断言学习
请求 url :https://www.v2ex.com/api/nodes/show.json?name=python get请求 postman发起请求并做断言 断言: tests["B ...
- 二、postman断言及正则表达式取值
postman老式断言与新式断言总结:本文以微信开发者文档为例 断言处如图所示 一.老式断言 老式断言总结:var variables相当于代码中定义的变量,test['']=true;相当于pyth ...
- postman断言的方法
1.在test添加断言 2.检查response的body中是否包含字符串: tests["Body matches string"] = responseBody.has(&qu ...
- postman断言的几种方式(二)
1.检查响应体是否包含字符串 pm.test("Body matches string", function () { pm.expect(pm.response.text()). ...
- Postman基本使用——get、post请求、断言、环境变量
Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件. 它提供功能强大的 Web API & HTTP 请求调试. 它能够发送任何类型的HTTP 请求 (GET, ...
随机推荐
- Java之旅hibernate(8)——基本关系映射
何为关系,何为映射,关系这个词想必大家都不陌生.比方你和老师之间是师生关系,你和父母之间是父子或者父女(母子或者母女关系). 关系是存在某种联系物体之间产生的.什么都是可能的.比方你和工具,你仅仅能使 ...
- [Eth]Mac/Phy/mdio/Rgmii
转自:http://www.cnblogs.com/zxc2man/p/3769777.html 1. MDIO(Management Data Input/Output),对G比特以太网而言,串行通 ...
- sama5d36 OUT0-OUT3 对应关系 带光模块的系统
ARM-IO9 PA8 OUT0 ARM-IO10 PA1 OUT1 ARM-IO11 PA3 OUT2 ARM-IO12 PA9 OUT3
- 串口编程-termios编程
linux使用terminfo数据库来描述终端能力以及调用对应功能的方法.POSIX定义了完成终端I/O的标准方法:termios函数族 #include <termios.h>#incl ...
- IOS设备信息与机型对照表
http://blog.csdn.net/olsQ93038o99S/article/details/78374343 参考别人的文章吧....
- http://jadethao.iteye.com/blog/1926525
http://jadethao.iteye.com/blog/1926525 ————————————————————————————————————————————————————————————— ...
- sql 更新字段
UPDATE YpeopleSET power='0'WHERE power='1'; UPDATE Ypeople SET power='1' WHERE power='0' and pid='22 ...
- Linux中安装配置hadoop集群
一. 简介 参考了网上许多教程,最终把hadoop在ubuntu14.04中安装配置成功.下面就把详细的安装步骤叙述一下.我所使用的环境:两台ubuntu 14.04 64位的台式机,hadoop选择 ...
- HBase和ZooKeeper
HBase和ZooKeeper HBase内置有ZooKeeper,也可以使用外部ZooKeeper. 让HBase使用一个已有的不被HBase托管的Zookeep集群,需要设置 conf/hbase ...
- linux的tcz文件怎么安装?
.tcz文件是Tiny core linux 应用安装包文件启动Tiny core linux后,可以使用tce-load命令安装软件如: tce-load -i /tmp/bftpd.tcz 转自: ...