{{$guid}} 在 Postman 中有什么用?
What is {{$guid}} used for in Postman?
Postman官网说Postman有几个dynamic variables。我的问题是:
{{$guid}}
: Adds a v4 style guid
{{$guid}}
是什么变量?如何在 API 请求的测试脚本中使用它?
GUID 是 "Globally Unique Identifier" 的缩写。 GUID 主要用于生成以连字符分隔的组的十六进制数字,以实现唯一性,例如:
b3d27f9b-d21d-327c-164e-7fb6776f87b0
在邮递员中,您可以根据需要使用它来生成随机 GUID 并将其发送到您的 api:
{
"id": "{{$guid}}",
}
发送时会产生(上面的随机示例):
{
"id": "b3d27f9b-d21d-327c-164e-7fb6776f87b0",
}
对于随机生成器,请在预请求中使用以下代码
var text="shipment";
var charset = "abcdefghijklmnopqrstuvwxyz0123456789";
for( var i=0; i < 8; i++ )
text += charset.charAt(Math.floor(Math.random() * charset.length));
postman.setEnvironmentVariable("awb", text);
详细解释如下link
http://jmeterblogb.blogspot.in/2016/10/how-to-automate-rest-api-in-postman.html
在 Postman 中有两种类型的变量可用。
1).如果您有静态变量,如 Ip、端口或其他不会在项目中更改的变量,您可以使用
存储到环境变量中
1.1)。设置 > 管理环境 > 添加 > 环境名称 > 添加参数,例如 >输入键:端口和输入值:80
1.2)。也可以在request > Pre-request Script
中添加
add "Set an environment variable " from snippet...
postman.setEnvironmentVariable("端口", "80");
2).对于像 SessionIdentifier.You 这样的动态变量,必须从响应中捕获并在测试集中添加一个来自片段的全局变量,它看起来像
"var jsonData = JSON.parse(responseBody);
postman.setGlobalVariable("SessionIdentifier", jsonData.Data.);"
在同一个回复中。
要使用,您应该 {{Port}},{{SessionIdentifier}}.
添加到环境后
如果您希望生成一个 V4 guid,您希望将其设置为环境变量,然后可以在您的 collection 中使用,您可以在 pre-request 中执行类似的操作] 脚本:
var uuid = require('uuid');
postman.setEnvironmentVariable('guid', uuid.v4());
然后您可以在 collection 中的多个调用中使用环境变量 guid。
当您想为整个 collection 生成一次 guid 并需要它在多个请求中保持不变时,这会很有用。
如果您希望为每个请求生成 guid,您可以直接在您的负载中使用 {{$guid}} 就像其他答案所解释的那样。
基于 Osloan 在 github 中的有趣回答:https://github.com/postmanlabs/postman-app-support/issues/886
使用 {{$randomUUID}}
之类的变量在每次请求时更改。
Postman官网说Postman有几个dynamic variables。我的问题是:
{{$guid}}
: Adds a v4 style guid
{{$guid}}
是什么变量?如何在 API 请求的测试脚本中使用它?
GUID 是 "Globally Unique Identifier" 的缩写。 GUID 主要用于生成以连字符分隔的组的十六进制数字,以实现唯一性,例如:
b3d27f9b-d21d-327c-164e-7fb6776f87b0
在邮递员中,您可以根据需要使用它来生成随机 GUID 并将其发送到您的 api:
{
"id": "{{$guid}}",
}
发送时会产生(上面的随机示例):
{
"id": "b3d27f9b-d21d-327c-164e-7fb6776f87b0",
}
对于随机生成器,请在预请求中使用以下代码
var text="shipment";
var charset = "abcdefghijklmnopqrstuvwxyz0123456789";
for( var i=0; i < 8; i++ )
text += charset.charAt(Math.floor(Math.random() * charset.length));
postman.setEnvironmentVariable("awb", text);
详细解释如下link
http://jmeterblogb.blogspot.in/2016/10/how-to-automate-rest-api-in-postman.html
在 Postman 中有两种类型的变量可用。
1).如果您有静态变量,如 Ip、端口或其他不会在项目中更改的变量,您可以使用
存储到环境变量中1.1)。设置 > 管理环境 > 添加 > 环境名称 > 添加参数,例如 >输入键:端口和输入值:80
1.2)。也可以在request > Pre-request Script
中添加add "Set an environment variable " from snippet...
postman.setEnvironmentVariable("端口", "80");
2).对于像 SessionIdentifier.You 这样的动态变量,必须从响应中捕获并在测试集中添加一个来自片段的全局变量,它看起来像
"var jsonData = JSON.parse(responseBody); postman.setGlobalVariable("SessionIdentifier", jsonData.Data.);"
在同一个回复中。 要使用,您应该 {{Port}},{{SessionIdentifier}}.
添加到环境后
如果您希望生成一个 V4 guid,您希望将其设置为环境变量,然后可以在您的 collection 中使用,您可以在 pre-request 中执行类似的操作] 脚本:
var uuid = require('uuid');
postman.setEnvironmentVariable('guid', uuid.v4());
然后您可以在 collection 中的多个调用中使用环境变量 guid。 当您想为整个 collection 生成一次 guid 并需要它在多个请求中保持不变时,这会很有用。
如果您希望为每个请求生成 guid,您可以直接在您的负载中使用 {{$guid}} 就像其他答案所解释的那样。
基于 Osloan 在 github 中的有趣回答:https://github.com/postmanlabs/postman-app-support/issues/886
使用 {{$randomUUID}}
之类的变量在每次请求时更改。