使用Postman,无法引用CSV文件进行JavaScript测试

时间:2018-11-06 16:03:33

标签: postman postman-collection-runner

我正在将REST API与POST请求一起使用。我创建了一个CSV文件以加载各种输入,并使用Collection Runner提交我的请求并迭代运行关联的JavaScript测试。我试图弄清楚如何在CSV的每一行中都有一个条目来引用我的JavaScript测试,以使JavaScript动态化。我搜索了邮递员文档和论坛,以及Google和Stack Overflow,但没有找到任何有效的方法。这是我要完成的基本示例。


假设我有一个基本的添加API。这是我的要求:

{
    "Numbers": {
        "Value_1": {{val1}},
        "Value_2": {{val2}},
            }
}

CSV文件如下:

val1,val2,sum
1,1,2
2,2,4
3,3,6

在此示例中,假设API返回的响应包括val1和val2之和;像这样的东西:

{
    "Numbers": {{sum}},
}

我能够将val1和val2加载到我的请求中,并遍历每行的请求,但是我无法将和值(来自同一CSV)合并到JavaScript测试中。

我正在尝试进行类似于下面的测试的工作,可以从电子表格中引用总和值,但Postman不喜欢我的语法。

pm.test("Adding machine", function () {   
var jsonData = pm.response.json();
pm.expect(jsonData.Numbers === {{sum}});
});

有人有什么建议吗?这甚至有可能吗?

1 个答案:

答案 0 :(得分:0)

您可以使用pm.iterationData().get('var_name')函数并创建这样的支票吗?

pm.test("Sums are correctly calculated", () => {
    pm.expect(pm.response.json().Numbers).to.equal(pm.iterationData.get('sum'))
})