postman官网下载地址:https://www.postman.com/downloads
Postman支持功能
1、快速构建
2、参数化与变量设置提取
3、查看请求数据
4、提供断言功能
5、批量运行
6、设置环境变量
Postman使用
构建请求
1、get请求,如果带有参数,可通过?追加到路径
2、post请求,参数格式支持:
FORM格式:Body –> form-data
JSON格式:Body –> raw –> JSON
文件格式:Body –> form-data –> File
参数化与预处理
请求参数化:
FORM格式:
JSON格式:
{ "demo1": "{{timeFormat}}", "remark": "标题{{$randomDomainWord}}", "name": "{{$randomStreetName}}" }
自定义参数预处理:postman请求的Pre-request-Script入口
//设置测试集变量,适用范围:在定义的测试集可用其他测试集不可用 pm.collectionVariables.set("birthday",("0000" + (Math.random()*Math.pow(36,7) << 0).toString(36)).slice(-7)); //设置全局变量 var moment = require('moment'); var date = moment().format("YYYY-MM-DD HH:mm:ss"); // 输入到控制台,查看参数设置是否正确 console.log(date); pm.globals.set("timeFormat", date); // 设置环境变量 pm.environment.set("book_url", "");View Code
查看请求与响应数据
请求与响应原始数据:可通过postman控制台console查看
响应结果数据:
提供断言功能
断言一般验证:
验证服务响应状态码
验证响应体中是否包含某个字符串
验证响应体中某个值是否等于预期值
断言设置入口:
断言模板:
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("string_you_want_to_search"); }); pm.test("Your test name", function () { var jsonData = pm.response.json(); pm.expect(jsonData.value).to.eql(100); });断言模板
/ Status Code:Code is 200 // 验证响应状态码 pm.test("响应状态码为 200", function () { pm.response.to.have.status(200); }); // Response Body:contains string // 验证响应体中是否包含某个字符串 pm.test("响应体中包含预期的字符串", function () { pm.expect(pm.response.text()).to.include("xxx"); }); // Response Body:JSON value check // 验证 JSON 中的某个值是否等于预期的值 pm.test("宠物名称为 doggie", function () { var jsonData = pm.response.json(); pm.expect(jsonData[0].name).to.eql("xxx"); }); // Response Body:Is equal to a string // 验证响应体是否与某个字符串完全相同 pm.test("响应体正确", function () { pm.response.to.have.body("response_body_string"); }); // Response Body:Content-Type header check // 验证响应头信息中的 Content-Type 是否存在 pm.test("Content-Type is present", function () { pm.response.to.have.header("Content-Type"); }); // Response time is less than 200ms // 验证响应时间是否小于某个值 pm.test("Response time is less than 200ms", function () { pm.expect(pm.response.responseTime).to.be.below(200); });断言模板demo
批量运行
批量运行,既可以是整个项目集也可以是项目下某个模块。
设置环境变量&提取变量
提取变量模板:
变量的优先级
优先级从高至低为:Data -> Enviroment -> Collection -> Global -> Local
标签:function,Body,postman,汇总,响应,简单,test,response,pm From: https://www.cnblogs.com/margret/p/17039639.html