如何在一个地方保存邮递员请求正文并在运行时通过

时间:2018-04-03 13:27:06

标签: javascript json postman

如何在一个地方设置请求主体并在多个请求中重复使用它,因此如果构建发生更改,我可以节省维护测试脚本的工作量。

我在动态变化的环境中使用邮递员进行测试自动化。 json的身体结构可能会从构建变为另一个, 我必须单独更新每个请求。

这是一个示例正文,我传递来自global setter的值

{        "phone": "{{phone}}",
         "income": {{income}} 
}

这些变量在预请求中定义为

pm.globals.set("phone", "xxxxxxxx953");
pm.globals.set("income",10);

TIA

1 个答案:

答案 0 :(得分:4)

根据你的说法,我理解你想要在一个地方定义一个可变的json体结构,然后通过在不同的请求上指定不同的值来重用它。 您可以使用以下方法实现此目的:

Body>中包含变量的值您希望以这种方式配置的每个请求的原始选项卡,例如:

{{rawBody}}

enter image description here

定义要在文件夹(或甚至集合)预先请求脚本中发送的JSON对象:

var obj = {
        phone: "{{phone}}",
        income: "{{income}}"
    };
pm.environment.set("rawBody", JSON.stringify(obj));

enter image description here

最后,在请求预请求脚本选项卡上,指定与请求对应的值:

pm.environment.set("phone", "xxxxxxxx953");
pm.environment.set("income", 10);

enter image description here

通过这种方式,您可以处理许多请求并立即修改其json正文。显然,如果要为每个请求指定不同的值,则必须在请求预请求脚本选项卡上指定它们。