目录[-]

在postman接口测试时,都需要用到接口参数之间的使用,以及接口返回数据的断言

方法1:获取token-设置为环境变量

var data = pm.response.json();   获取接口的返回值,并以json格式获取

pm.environment.set("token", data.data.token);   设置环境变量token

接口运行成功后,在环境变量中就可以看到成功设置环境变量

第一个接口设置好环境变量后,后面的接口如果用到次参数,可以使用{{token}}直接使用设置好的token

方法2:获取token-设置为全局变量

var data = pm.response.json();   获取接口的返回值,并以json格式获取

pm.globals.set("token", data.data.token);   设置环境变量token

(3)获取接口中的某响应头-获取Content-Type

var ContentType=postman.getResponseHeader("Content-Type");

pm.environment.set("Content-Type", ContentType);

(4)判断接口响应值是否是200:Status code:Code is 200

pm.test("断言200", function () {

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

});

(5)检查接口响应值中是否包含登录成功字样,【若include中包含则返回"Body matches 登录成功"】

//Response body:Contains string

pm.test("Body matches 登录成功", function () {
    pm.expect(pm.response.text()).to.include("登录成功");

});

(6)检查JSON中的某个值是否等于预期【pm.expect(jsonData.字段名称).to.eql(字段返回值)】

//Response body:JSON value check

pm.test("code=200,success=true,message=登录成功", function () {
    var jsonData = pm.response.json();

    pm.expect(jsonData.code).to.eql(200);

    pm.expect(jsonData.success).to.eql(true);

    pm.expect(jsonData.message).to.eql("登录成功");

});

(7)检查响应体是否等于response_body_string字符【pm.response.to.have.body("接口响应值精确匹配");】

//Response body:Is equal to a string

pm.test("Body is correct", function () {
    pm.response.to.have.body("接口返回详情精确匹配值,JSON则需要转义");

});

(8)接口响应头Content-Type检查是否存在

//Response headers:Content-Type header check

pm.test("Content-Type is present", function () {
    pm.response.to.have.header("Content-Type");

});

(9)接口响应时间是否小于200毫秒,如果是返回pass

//Pesponse time is less than 200ms

pm.test("Response time is less than 20ms", function () {
    pm.expect(pm.response.responseTime).to.be.below(200);

});

(10)接口响应code包含[201, 202,200],若包含201,202,200则返回true

//Status code:Successful POST request

pm.test("Successful POST request", function () {
    pm.expect(pm.response.code).to.be.oneOf([201, 202,200]);

});

//(11)Status Code的返回值是否包含对应的字符【包含OK字符,若包含则返回pass】

//Status code:Code name has string

pm.test("Status code name has string", function () {
    pm.response.to.have.status("OK");

});

//(12)将XML格式的响应体转换为JSON格式

//Response body:Convert XML body to a JSON Object

var jsonObject = xml2Json(responseBody);