postman进阶

json值校验


postman进阶_第1张图片

发送请求,返回格式为json

postman中有很多断言设置


postman进阶_第2张图片

找到自己想要的断言,比如我用了判断状态码是否为200的和json校验。

官方文档给出的最新方法是:

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

    var jsonData = pm.response.json();

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

});

一开始没有看懂如何校验,后来摸索了下,value换成json前面的key,eql括号里则是后面的值

json格式校验分别用了新版的方法和老板的方法

新版方法:

pm.test("Check respose result value new", function () {

    var jsonData = pm.response.json();

    pm.expect(jsonData.result).to.eql("0");

});

老版方法:

var jsonData = JSON.parse(responseBody);

tests["Check respose result value old"] = jsonData.result === "0";

点击postman中的send发送请求,然后查看测试结果:

postman进阶_第3张图片


校验JSON的文档格式 

Use Tiny Validator for JSON data

官方文档:

var schema = {

  "items": {

    "type": "boolean"

  }

};

var data1 = [true, false];

var data2 = [true, 123];

pm.test('Schema is valid', function() {

  pm.expect(tv4.validate(data1, schema)).to.be.true;

  pm.expect(tv4.validate(data2, schema)).to.be.true;

});

自己写一个:

var schema = {

  "result": {

    "type": "string",

    "description":"return result"

  }

};

var data=JSON.parse(responseBody);//获取json格式的数据

pm.test('Schema is valid', function() {

  pm.expect(tv4.validate(data, schema)).to.be.true;//格式校验方法

});

测试结果:

postman进阶_第4张图片

你可能感兴趣的:(postman进阶)