Postman - 来自 NodeJS 的 Newman 运行

Postman - Newman running from NodeJS

为了保存 postman API 调用的响应,我正在使用 newman 运行 执行 Postman 收集。

使用

运行时收集运行s
newman run C:\TasteBud\NewMan\JSON-Order_collection.json --env-var unique_order_id=OD-06-07-I2Q5-JYRY5ARPN --environment C:\TasteBud\NewMan\EnvironmentJSON.json

然而,当我 运行 相同的集合作为 javascript 或 nodejs 脚本的一部分时。

node writeToFile.js    

它抛出错误作为节点 "1⠄ 测试脚本中的 JSONError" 请参考附图。我需要将登录请求生成的身份验证令牌传递给后续请求。所以我在“测试”中有变量赋值。

let response = pm.response.json();
pm.environment.set("auth_token", response.data.auth_token);
console.log(pm.response.json().data.auth_token);

为什么我不能进行“测试”?如果没有,那么我如何 pass/set 这些环境变量用于后续 API 调用?

writeToFile.js 中的代码在这里。 writeToFile.js

始终在令牌生成中使用状态代码验证。因为每个请求都是基于令牌的,如果我们收到负面状态代码,则终止构建。

postman.setNextRequest(null);

var jsonData = JSON.parse(responseBody);
if(responseCode.code === 200){
tests["Status code is 200"] = responseCode.code === 200;
postman.setEnvironmentVariable("AT", jsonData.oauth2.accessToken);
console.log("AccessToken : " +jsonData.oauth2.accessToken);
}
else{
    postman.setNextRequest(null);
      console.log("Error generating user token");
    console.log("Status code : "+responseCode.code);
    console.log("Status description  : "+jsonData.statusDescr);
}