Postman接口测试辅助脚本

postman-test.js

// 设置环境变量:
var jsonData = pm.response.json();
pm.environment.set("vmResourceId", jsonData.returnObj.resources[0].resourceID);

// 获取环境变量:
var bucketName = pm.environment.get("bucketName")

// 从get请求获取参数:
var querystring = require("querystring")
var url = request.url;
var str = url.split("?")[1];
var groupId = querystring.parse(str).groupID

// 通过传参的名称,查询ID,并设置ID、name为环境变量:
var list = pm.response.json().returnObj.results;
for (let i = 0; i < list.length; i++) {
    if (list[i].policyName == "thrd-test") {
        console.log(i, list[i].policyID)
        pm.environment.set("policyID", list[i].policyID)
        pm.environment.set("policyName", "thrd-test")
    }
}

// 设置超时时间:
setTimeout(function () { console.log("等待60秒执行下一操作") }, 60000);

// 从post传参中设置环境变量:
var res_data = request.data

// request表示请求对象,因为是josn的方式request.data是请求内容字符串
var res_json = JSON.parse(res_data)

// 将字符串转换为json对象
var volumeName = res_json.name
pm.environment.set("volumeName", volumeName);
console.log("========volumeName=========", volumeName)

// 查询修改值生效:
pm.test("检查修改安全组描述生效", function () {
    pm.expect(pm.response.text()).to.include(pm.environment.get("SECGROUPDES"));
});

// 验证查询值正确:
pm.test("验证资源查询正确", function () {
    var bucketName = pm.environment.get("bucketName");
    var jsonData = pm.response.json();
    pm.expect(jsonData.returnObj.bucket).to.eql(bucketName);
});

// 验证返回数据包含某字符串:
pm.test("验证返回结果包含jobID",
    function () {
        pm.expect(pm.response.text()).to.include("jobID");
    });

// 验证不包含某字符串:
pm.test("验证返回结果包含jobID",
    function () {
        pm.expect(pm.response.text()).to.not.include("jobID");
    });

// 验证返回码正确:
pm.test("验证返回码正确", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.statusCode).to.eql(800);
});

// 验证返回结果大于0:
pm.test("返回数组>0", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.returnObj.length).to.above(0);
});

// 验证返回returnObj不为空:
pm.test("返回一条数据", function () {
    pm.expect(jsonData.returnObj != null).to.be.true;
});

// 验证属性为空:
pm.test("instanceUUID错误,返回空信息", function () {
    pm.expect(Object.getOwnPropertyNames(pm.response.json().returnObj.result[0].itemList).length).to.equal(0);
});

posted @ 2023-06-28 17:46  wanghongwei-dev  阅读(122)  评论(0)    收藏  举报