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);
}
为了保存 postman API 调用的响应,我正在使用 newman 运行 执行 Postman 收集。
使用
运行时收集运行snewman 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);
}