postman编写记录
一、 基本操作步骤
内容:
1、请求方式、请求链接URL
2、请求头
3、请求参数params(明传),或 请求体body(密传)
4、预处理脚本和断言
5、环境
(1)请求方式、请求链接URL
请求方式有九种,一般是post和get 比较多,看接口填写正确的请求方式和链接URL就可以了。
(2)请求头
一般同一个项目系统的请求头,都会有一些固传参,可以设置就不用每次都写。
(3)请求参数params(明传),或 请求体body(密传)
明传
有些接口,比较简单的采取的是明传,那么参数就需要放在params中,避免格式不同导致出错。
密传body
一般在谷歌浏览器中的调试模式(F12)中可以找到需要穿的参数,在Network中的XHR格式中的Headers可以看到请求方式和链接URL,还有需要放在body的参数,在Request Payload(复制view source)转换格式就可以了(json.net)。
至于响应的内容,也可以Preview中看到。
复制view source中的代码,在 json.net 中转换成json格式就可以了,当然别忘了在postman中选择raw中的 json格式了。
(4)预处理脚本和断言
预处理脚本
断言
常用语句
获取响应对象
var jsonData = pm.response().json;
定义对象/变量内容 var
var bianliang = “可加可不加” + date; //这种变量值就固定成了字符串+时间
控制台打印对象和格式 console.log()
console.log(date) //打印时间,时间的格式需要另外设置
console.log(bianliang) //只打印变量bianliang
两种打印格式:
//直接来打印字符串和变量
var bianliang = 1 ;
console.log(“变量为:”,bianlaign)
//把字符串和变量连在一起打印
var bianliang = 1 ;
console.log(“变量为:”+bianliang )
//打印变量,以及获取最新变量的id(直接在响应的json数据中获取)
console.log(“变量的id为:” , jsonData.data.records[0].id)
设置环境(/全局/局部) 变量
//设置环境变量bianliang,变量值从json的响应数据中取
pm.enviroment.set(“bianliang”,jsonData.data.records[0].bianliang);
//前面是变量名,后面是变量值,因为前面拿到了变量值,因此不用从json的响应数据中取
pm.enviroment.set(“bianliang”,bianliang);
获取当前时间 moment—require,单个字符串用双引号或单引号都可以
var moment = require(‘moment’);
定义时间格式
var moment = require(“moment”); //获取当前时间
var date = moment().format(“YYYY-MM-DD HH:MM:SS”) //定义时间格式
语法
1、js中单引号和双引号的区别
亲测过,一条正确的语句,单引号和双引号都可以执行成功
2、require:主要是用来加载模块的
require([‘XX’],function(XX){})
require:这个呢主要是用来导入我们的模块的啦,他有两个参数的。
第一个是导入的模块名称,可以是一个字符串,注意,字符串的话就只能是导入一个模块,如果是多个模块的话就要用数组的方式导入;第二个参数是一个回调函数,这个函数的参数呢,主要还是看你导入的模块有没有返回值,像jq那样的模块的返回值就是一个$符,那就给方法传入一个参数,替代该模块返回的参数,到时就可以使用这个参数名称来调用模块里面的方法啦,注意,导入的模块的参数的顺序是依照前面导入模块的顺序的,所以要注意不要弄混淆的,一般有返回值的模块先导入,没有返回值的排在后面。
————————————————
版权声明:本文为CSDN博主「LFWMP」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:
3、moment()
下面是关于时间的显示格式
4、常用语句:var jsonData = pm.response.json(); 获取响应对象
5、对时间进行加减:
今天找到一个对时间进行加减非常齐全的文章:
https://itbilu.com/nodejs/npm/4JkB42p-x.html#duration-add
二、常见问题
运行提示问题
问题(1)
响应码不是200的,比较常见的响应码,可以看看是客户端还是服务器出了问题。
像这种的响应码为200,其他返回null的就是成功了没问题。
像这种的,响应码为9999,提示系统异常的,我出现的很多次,都是参数传错了,比如params中的参数,或者body中的参数或者预处理、断言中的出错,仔细检查。
问题(2)
强求脚本错误:
There was an error in evaluating the Pre-request Script: TypeError: Cannot read property ‘json’ of undefined
都排查了一边,之后才发现是写错地方了,应该写在断言的,结果却写在了预处理脚本中(第二第三行多了一个json忘了删了)
内容参数等问题
(1)参数为md5加密
三、postman连接外部数据
1、postman连接外部网页,并进行操作
2、postman连接数据库,并进行操作
有两种方法,一种是xmysql,一种是omysql
未完待续……