当 运行 newman 来自节点 js 时,是否可以创建或更新邮递员测试脚本或变量?
Is it possible to create or update postman test scripts or variables when running newman from node js?
我的 post 人 collection 有多个 post 电话,他们 return pdf 作为回应。
使用 newman & node js 我是 运行 将 pdf 解析为文本的 collection。我想将此文本放入环境变量或测试脚本中,以便可以执行进一步检查。
我正在尝试这样做,以便整个请求、响应和验证都发生在同一个请求中。 (而不是 https://community.postman.com/t/pdf-parsing-with-postman-and-express-js/17938)
我注意到可以使用以下脚本更新请求 header。同样,是否可以在执行后更新或设置变量或测试脚本(例如在请求或 beforeTest 或 beforeScript 事件中)..?
const newman = require('newman');
PostmanHeader = require('postman-collection').Header;
newman.run({
collection: require('./myCollection.json'),
reporters: 'cli'
})
.on('beforeItem', (error, data) => {
console.log("BeforeUpdate------------------");
console.log(data.item.request.headers.members);
var myHeaderVal = 'Test123';
additionalHeader = new PostmanHeader({
key: 'CustomHeader',
value: myHeaderVal
});
data.item.request.headers.members.push(additionalHeader);
console.log("Updated------------------");
console.log(data.item.request.headers.members);
}
)
谢谢
const newman = require('newman'); // require newman in your project
// call newman.run to pass `options` object and wait for callback
newman.run({
collection: require('./test.postman_collection.json'),
reporters: "cli",
}, function(err) {
if (err) {
throw err;
}
console.log('collection run complete!');
}).on('beforeTest', (error, data) => {
console.log("BeforeUpdate------------------");
data.events[0].script.exec = ["pm.test(\"Status code is 500\", function () {\r", " pm.response.to.have.status(00);\r", "});"];
});
您可以使用 beforeScript 或 beforeTest 访问和修改测试脚本
我的 post 人 collection 有多个 post 电话,他们 return pdf 作为回应。 使用 newman & node js 我是 运行 将 pdf 解析为文本的 collection。我想将此文本放入环境变量或测试脚本中,以便可以执行进一步检查。
我正在尝试这样做,以便整个请求、响应和验证都发生在同一个请求中。 (而不是 https://community.postman.com/t/pdf-parsing-with-postman-and-express-js/17938)
我注意到可以使用以下脚本更新请求 header。同样,是否可以在执行后更新或设置变量或测试脚本(例如在请求或 beforeTest 或 beforeScript 事件中)..?
const newman = require('newman');
PostmanHeader = require('postman-collection').Header;
newman.run({
collection: require('./myCollection.json'),
reporters: 'cli'
})
.on('beforeItem', (error, data) => {
console.log("BeforeUpdate------------------");
console.log(data.item.request.headers.members);
var myHeaderVal = 'Test123';
additionalHeader = new PostmanHeader({
key: 'CustomHeader',
value: myHeaderVal
});
data.item.request.headers.members.push(additionalHeader);
console.log("Updated------------------");
console.log(data.item.request.headers.members);
}
)
谢谢
const newman = require('newman'); // require newman in your project
// call newman.run to pass `options` object and wait for callback
newman.run({
collection: require('./test.postman_collection.json'),
reporters: "cli",
}, function(err) {
if (err) {
throw err;
}
console.log('collection run complete!');
}).on('beforeTest', (error, data) => {
console.log("BeforeUpdate------------------");
data.events[0].script.exec = ["pm.test(\"Status code is 500\", function () {\r", " pm.response.to.have.status(00);\r", "});"];
});
您可以使用 beforeScript 或 beforeTest 访问和修改测试脚本