Postman--Pre-request执行其他接口

 

Pre-request Script中获取另一个请求的返回数据

  • Pre-request Script中发送get请求
//测试接口前获取另一个接口的返回数据,并设置为环境变量

// 返回值按code的创建时间的desc排序
var url =  pm.environment.get("api_host")+"/gists?access_token="+pm.globals.get("source_access_token");

pm.sendRequest(url, function (err, response) {
    // js数组对象
    var arrayData = response.json();

    // 返回最新创建的一条code(js对象),json对象
    var latest_created_code = arrayData[0];

    // 返回latest_created_code对象的id的属性值,并设置为环境变量
    // json.key 或者 json['key'] 均可
    pm.environment.set("latest_gist_id", latest_created_code.id);
});
  • Pre-request script中发送post请求
const request = {
  url:  pm.environment.get("api_host")+'/api/login',
  method: 'POST',
  header: 'Content-Type:application/json',
  body: {
    mode: 'raw',
   // 请求体
    raw: JSON.stringify({ username: 'sandy', password: "123456" })
  }
};

pm.sendRequest(request, function (err, response) {
    console.log(response.json());
});
  • Tests中对应的脚本如下:
// 请求完成后销毁请求前设置的环境变量

pm.globals.unset("latest_gist_id");

你可能感兴趣的:(软件测试)