postman常用方法

设置/获取/清除一个环境变量

pm.environment.set("variable_key", "variable_value");

pm.environment.get("variable_key");

pm.environment.unset("variable_key");

 

 

设置/获取/清除一个全局变量

pm.globals.set("variable_key", "variable_value");

pm.globals.get("variable_key");

pm.globals.unset("variable_key");

 

断言验证码是否为200

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");

});

 

断言jsom格式的响应结果,某个json键是否等于某个json值

pm.test("Your test name", function () {

    var jsonData = pm.response.json();

    pm.expect(jsonData.value).to.eql(100);

});

 

断言相应body是否等于某一字符串

pm.test("Body is correct", function () {

    pm.response.to.have.body("response_body_string");

});

 

断言Content-Type是否为某一值

pm.test("Content-Type is present", 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);

});

 

将XML转换为JSON

var jsonObject = xml2Json(responseBody);

 

发送异步请求

同步:提交请求->等待服务器处理(期间浏览器不能做任何事))->处理完毕

异步:提交请求->等待服务器处理(期间浏览器可以做其他事情)->处理完毕

pm.sendRequest("https://postman-echo.com/get", function (err, response) {

    console.log(response.json());

});

### Postman 常用脚本示例 #### 使用环境变量设置请求头 为了使请求更加灵活并易于管理不同环境下的配置,在发送请求之前可以利用预请求脚本来设置请求头。这可以通过访问存储于环境中定义好的键值来实现。 ```javascript pm.request.headers.add({ key: 'Authorization', value: 'Bearer ' + pm.environment.get('accessToken') }); ``` 此段代码展示了如何向 HTTP 请求添加授权头部信息,其中 `pm.environment.get` 方法用于获取当前环境下名为 `accessToken` 的变量值[^4]。 #### 执行简单的断言操作 在响应返回之后,可以在测试部分编写 JavaScript 来验证 API 返回的数据是否符合预期。下面是一个基本的例子: ```javascript // 获取响应体中的 JSON 数据 const jsonData = pm.response.json(); // 断言状态码为 200 OK pm.test("Status code is 200", function () { pm.response.to.have.status(200); }); // 验证响应时间不超过 200ms pm.test("Response time is less than 200ms", function () { pm.expect(pm.response.responseTime).to.be.below(200); }); // 检查特定字段的存在性及其内容 pm.test("Body contains id and matches expected value", function () { const expectedId = "someExpectedValue"; pm.expect(jsonData.id).to.eql(expectedId); }); ``` 上述代码片段说明了怎样创建几个常见的测试案例:确认服务器回复的状态码、测量响应速度以及检验 JSON 结果集中某个属性的准确性[^2]。 #### 动态修改 URL 参数 有时可能需要基于某些条件改变请求路径的一部分;这时就可以借助 Pre-request Scripts 实现这一点。例如,假设有一个查询参数叫做 page,其默认值设为1,但如果存在名为 currentPage 的环境变量,则应覆盖它。 ```javascript let url = new URL(pm.request.url.toString()); if (pm.environment.has("currentPage")) { let params = new URLSearchParams(url.search.slice(1)); params.set("page", pm.environment.get("currentPage")); url.search = '?' + params.toString(); } pm.request.url.update(url.href); ``` 这段代码实现了当有自定义页面编号时更新 GET 请求中分页参数的功能[^3]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值