postman记录

  1. 点击Tests编写测试断言

    postman接口测试如何做断言操作?
  2. 2

    断言响应时间

    pm.test("Response time is less than 200ms", function () {

     

       pm.expect(pm.response.responseTime).to.be.below(200);

     

    });

     

    // 断言响应事件小于200ms

     

  3. 3

    断言状态码

    pm.test("Successful POST request", function () {

     

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

     

    });

     

    // 断言状态码200-202区间

     

  4. 4

    断言响应中包含某个字符串

    pm.test("Body matches string", function () {

     

       pm.expect(pm.response.text()).to.include("ok");

     

    });

     

     

    // 断言响应中包含"ok"

     

  5. 5

    断言响应中的字段等于某个值

    pm.test("message test", function () {

     

       var jsonData = pm.response.json();

     

       pm.expect(jsonData["message"]).to.eql("ok");

     

    });

     

     

    // 断言响应中"message" = ok"

     

  6. 6

    断言响应中的字段不等于某个值

    var jsonData = JSON.parse(responseBody);

     

    tests["message不为bad"] = jsonData["message"] != "bad";

     

     

    // 断言响应中"message" != bad"

     

  7.  

    断言响应中的列表长度

    pm.test("data list test", function () {

     

       var jsonData = pm.response.json();

     

       pm.expect(jsonData["data"].length).to.eql(41);

     

    });

     

     

    // 断言响应中"list"的字段长度

     

  8.  

    断言响应中的列表中第几个元素的字段值

    pm.test("data list 0 test", function () {

     

       var jsonData = pm.response.json();

     

       pm.expect(jsonData["data"][0]["time"]).to.eql("2018-11-28 17:27:41");

     

    });

     

     

    // 断言响应中"list 0的"的time字段的值

     

  9.  

    json schema验证

    tv4是postman内置的JSON Schema验证库,参考:https://geraintluff.github.io/tv4/

    responseBody如下==:==

    {

     

       "errCode": 0,

     

       "errMsg": "",

     

       "data": {

     

           "id": 3210,

     

           "title": "",

     

    const customerSchema = {

     

     "type": "object",        

     

     "properties": {

     

       "errCode": {

     

           "type": "integer",

     

           "minimum": 0,

     

           "maximum": 3,

     

           "minLength": 2,

     

           "maxLength": 3

     

       },

     

       "errMsg": {"type": "string"},

     

     }

     

    };

     

     

    var customer = JSON.parse(responseBody);

     

    // console.log(customer);

     

    tests["Valid Data1"] = tv4.validate(customer, customerSchema);

     

    //验证json中的errCode类型是integer,并且验证最小值和最大值区间、验证长度区间

     

  10.  

    测试前准备

    发送请求之前往往需要准备数据,比如设置header中参数或者计算签名.

    使用Pre-request Script可以编写一些准备数据.

    postman接口测试如何做断言操作?
  11.  

    在header头中引入刚刚设置{{timestamps}}环境变量.

    postman接口测试如何做断言操作?
  12.  

    可以看到header中已经填写了时间戳参数.

    postman接口测试如何做断言操作?
  13.  

    请求前编写加密算法

    var username = "test";

     

    var pwd = "123321";

     

    var base64Str = CryptoJS.enc.Utf8.parse(username+pwd);

     

    var token = CryptoJS.enc.Base64.stringify(base64Str);

     

    postman.setGlobalVariable("token",token);

     

    console.log(token);

     

     

    // 使用账号+密码的base64位加密算法

     

    postman接口测试如何做断言操作?
  14.  

    header头中携带生成加密的token变量

    postman接口测试如何做断言操作?
  15.  

    服务端使用base64位解密

    postman接口测试如何做断言操作?
     
     
    转载:
    https://jingyan.baidu.com/article/6b182309032817fa58e159ce.html
posted @ 2021-07-19 16:32  Catonce  阅读(82)  评论(0)    收藏  举报