Rob*_*enz 6 javascript node.js postman newman
script.js我正在尝试从本地保存的邮递员集合中运行纽曼。在邮递员中,调用有效,并返回我需要访问的响应主体令牌。
我不在乎如何返回响应正文,如果不需要,我只是不想打开邮递员。
我不断遇到以下错误ReferenceError: responseBody is not defined
任何有关此事的帮助将不胜感激。
$ node script.js
var newman = require('newman'); // require newman in your project
// call newman.run to pass `options` object and wait for callback
newman.run({
    collection: require('./pathto/my_coll.postman_collection.json'),
    reporters: 'cli'
}, function (err) {
    if (err) { throw err; }
    // console.log(responseBody);
    JSON.parse(responseBody);
});
Run Code Online (Sandbox Code Playgroud)
console.log或似乎JSON.parse都没有达到目的,因为responseBody似乎从一开始就没有定义
穷尽参考:
https://www.getpostman.com/docs/v6/postman/scripts/postman_sandbox
您可以尝试console.log(summary.run.executions)从那里深入研究它。Newman 脚本并不真正知道responseBody该上下文中的内容,因此它不知道要注销什么。
查看 Newman 文档以获取更多信息https://github.com/postmanlabs/newman/blob/develop/README.md#cli-reporter-options
\n邮递员集合是请求的集合。
您正在运行整个集合(这是由 Newman 一起运行的一系列请求)
因此,在回调函数中记录/解析responseBody是不正确的(逻辑上陈述这一点)。
根据Newman 文档,它指出.run函数的回调是用两个参数调用的,即err和summary
回调中的摘要参数包含运行的完整摘要,如果您想使用该摘要,可以按照文档进行操作。
现在,您要做的基本上是记录请求的响应。
您需要在集合中的每个请求的测试脚本中编写一个console.log(responseBody) / ,然后在使用 newman 运行集合时,每个请求的每个responseBody 将根据您的需要注销/解析。JSON.parse(responseBody)
要访问摘要,您可以像这样修改您的函数:
var newman = require('newman');
newman.run({
    collection: require('./C1.postman_collection.json'),
    reporters: 'cli'
}, function (err, summary) {
    if (err) { throw err; }
    console.log(summary);
});
Run Code Online (Sandbox Code Playgroud)
        |   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           13323 次  |  
        
|   最近记录:  |