前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Postman API测试工具 - 断言 基本使用(二)

Postman API测试工具 - 断言 基本使用(二)

作者头像
EXI-小洲
发布2022-12-19 14:41:09
4520
发布2022-12-19 14:41:09
举报
文章被收录于专栏:Spider篇

PostMan工具断言

断言:诊断语言,检查点。检查返回的结果是否是正确。

怎么用利用Postman工具添加断言

常见的验证:

验证返回码必须是200

代码语言:javascript
复制
pm.test("Status code is 200", function () {
    pm.response.to.have.status(200);
});

响应时间验证:

代码语言:javascript
复制
pm.test("Response time is less than 200ms", function () {
    pm.expect(pm.response.responseTime).to.be.below(200);
});

请求成功验证

代码语言:javascript
复制
pm.**test**("Successful POST request", **function** () {

  pm.expect(pm.response.code).to.be.oneOf([201,200, 202]);

});

包含某个字符串验证

代码语言:javascript
复制
pm.test("Body matches string", function () {
    pm.expect(pm.response.text()).to.include("string_you_want_to_search");
});

json某个值检查:

代码语言:javascript
复制
pm.test("Your test name", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.value).to.eql(100);
});
代码语言:javascript
复制
pm.test("验证返回码是200,返回是成功的",function(){

  pm.response.to.have.status(200);

  //检查返回的状态是200

})
代码语言:javascript
复制
pm.test("验证状态码返回是200", function () {
    pm.response.to.have.status(200);
    //验证返回码必须是200
});

pm.test("Response time is less than 200ms", function () {
    pm.expect(pm.response.responseTime).to.be.below(15);
    //验证处理的时间不超过200ms
});

// 设置一个变量,把返回的Json数据存入变量中(jsonData)
var jsonData = pm.response.json();



pm.test("message城市的结果包含了长沙市" ,function(){
    pm.expect(jsonData.forecasts[0].city).to.eql("长沙市")
})

//验证json数据中某一个字符串的值 
pm.test("message的结果是查询成功", function () {
pm.expect(jsonData.message).to.eql("查询成功")
});

//josn格式多节点值的验证
pm.test("验证查询出的品牌ID的正确", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.data.id).to.eql(6742);
});

//josn格式多节点多个返回的组值,使用角标(索引)进行测试
pm.test("验证查询出的品牌ID的正确", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.data.rows[4].id).to.eql(2222);
});

//josn格式多节点多个返回的组值,使用角标(索引)进行测试
pm.test("验证查询出的品牌图片的正确性", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.data.rows[2].image).to.eql("http://img10.360buyimg.com/popshop/jfs/t5662/36/8888655583/7806/1c629c01/598033b4Nd6055897.jpg");
});

// 验证返回结果中包含某一个字符串
pm.test("Body matches string", function () {
    pm.expect(pm.response.text()).to.include("华为");
});


// 检查接口返回的性能问题,不超过300ms, 如果超过1000ms
pm.test("响应时间小于300ms,性能超牛逼", function () {
    pm.expect(pm.response.responseTime).to.be.below(500);
});

//检查返回码是200
pm.test("Status code is 200", function () {
    pm.response.to.have.status(200);
});

//检查接口调用返回成功
pm.test("Successful POST request", function () {
    pm.expect(pm.response.code).to.be.oneOf([201,200, 202]);
});

//检查结果中包含字符串
pm.test("包含小雨", function () {
    pm.expect(pm.response.text()).to.include("小雨");
});

//精细化检查,检查某一个键的值 

//设置一个全局变量,把响应的json的内容存储到变量jsonData中
var jsonData = pm.response.json();

//验证返回状态码是1,
pm.test("返回码为1", function () {
        pm.expect(jsonData.status).to.eql("1");
});

// 验证返回的值确定是长沙市 ,,如果数据的下一级,就使用“.”,如果是数组类型,就使用"[]."
pm.test("返回确定为长沙市", function () {
        pm.expect(jsonData.forecasts[0].city).to.eql("长沙市");
});

自动执行

选择需要自动执行的项目,点击 Run

选中需要执行的用例 :

单击run 运行

查看执行结果

导出测试结果

导出测试报告:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-12-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • PostMan工具断言
    • 断言:诊断语言,检查点。检查返回的结果是否是正确。
      • 怎么用利用Postman工具添加断言
        • 自动执行
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档