Postman中文网站 18221674630

Postman-test断言

发布者:Postman中文网站 时间:2023-09-05

调用接口之后我们往往会增加断言来判定接口是否调用成功,本文主要记录下用postman调用接口并使用Tests编写断言

登录接口

首先,我们用postman调用登录接口返回结果。

如下图所示就是调用登录接口后返回的结果

1.png

返回的结果

{

    "code": 0,

    "login_info": {

        "id": 1,

        "login_time": "2021/07/07 15:18:23",

        "token": "1b619d28bc8803bc81ddbaddc54fdc69",

        "username": "wintest"

    },

    "msg": "恭喜,登录成功!"

}


Tests设置断言

校验返回的结果是否为json格式

pm.test("response must be valid and have a body", function () {

     pm.response.to.be.ok;

     pm.response.to.be.withBody;

     pm.response.to.be.json;

});

2.png


检验body内容

//校验code为0

pm.test("response code must  to be 0",function(){

pm.expect(pm.response.json().code).to.equal(0)});

//校验返回的msg

pm.test("response msg",function(){

pm.expect(pm.response.json().msg).to.equal("恭喜,登录成功!")});

3.png

校验状态码、返回头

//校验状态码

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

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

//校验返回头部参数

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

pm.expect(pm.response.to.have.header("Content-Type"))});

//校验返回Content-Type值为json

pm.test("content-type",function(){

pm.expect(pm.response.headers.get("Content-Type")).to.equal('application/json')});

4.png

校验返回结果与变量

pm.test("Response property matches environment variable", function () {

  pm.expect(pm.response.json().username).to.eql(pm.environment.get("admin_username"));

});

5.png