【问题标题】:How to pass dynamic json request body in postman如何在邮递员中传递动态 json 请求正文
【发布时间】:2016-03-15 08:26:53
【问题描述】:

我有一个 POST 请求,我需要动态传递一些参数,因为我的代码正在检查重复条目。我尝试编写一个预请求脚本,然后设置全局变量并尝试在我的请求中访问它。它不工作。 PFB,详情

预请求脚本

postman.setGlobalVariable("firstname", (text + parseInt(Math.random()*10000)).toString()); postman.setGlobalVariable("姓氏", text + parseInt(Math.random()*10000));

身体

{ “要求”: { "firstName":"{{firstname}}", "middleName":"mani", "姓氏":"{{姓氏}}" } }

这里 firstName 作为 {{firstname}} 而不是随机字符串传递。

【问题讨论】:

  • 如果是为了测试目的,为什么不发送硬编码而不是动态的。我相信{{firstname}}是角度的占位符,因为角度实现,你在那里得到了名字。我认为
  • 是的,这是为了测试目的,但我的业务逻辑不会接受重复数据(名字、姓氏和其他一些细节的组合),所以我需要传递随机动态数据
  • 我相信服务器会检查重复项。尝试再次发布相同的组合并检查是否发生验证
  • 是的,服务器检查重复。我想使用 postman runner 来加载数据以进行测试,为此我需要传递动态名称,以便我可以加载多个数据。

标签: dynamic postman


【解决方案1】:

你可以通过添加来做到这一点

var rnd = Math.floor((Math.random() * 10000) + 1);
postman.setEnvironmentVariable("firstname", "fname"+rnd);
postman.setEnvironmentVariable("lastname", "lname"+rnd);

在预请求脚本部分。

然后添加

{ 
"firstName":"{{firstname}}", 
"middleName":"mani", 
"lastName":"{{lastname}}" 
} 

在体内。

我在 Postman 和 Newman 中都尝试过,并且可以完美地生成随机的名字和姓氏。

【讨论】:

    【解决方案2】:
    { 
     "request": { 
       "firstName":"{{$randomInt}}",
       "middleName":"mani",
       "lastName":"{{$randomInt}}" 
      }
    }
    

    无需添加全局变量。 邮递员有动态变量{{$randomInt}},它在0到1000之间添加一个随机整数

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-22
      • 1970-01-01
      • 2019-07-09
      • 2018-06-18
      • 2021-05-31
      • 1970-01-01
      相关资源
      最近更新 更多