postman使用-第九关 请求参数预处理

postamn 提供可在请求中使用的动态变量:

{{$guid}} :v4样式的guid
{{$timestamp}}:当前时间戳(Unix时间戳,以秒为单位)
{{$randomInt}}:0到1000之间的随机整数
当输入{ 的时候,会自动显示上面三种随机变量可以使用
更多随机变量可以参考官方文档:
https://learning.postman.com/docs/writing-scripts/script-references/variables-list/
比如用户名使用时间戳,那每次注册都不一样,都可以注册成功了,引用时间戳变量:{{$timestamp}}

通常这种情况,我们还可以用pre-request功能对请求前参数预处理来实现

注册账号用"test"名称会发现已经被注册了, username 引用环境变量中的 username 变量。

于是在Pre-request Script 对请求参数预处理, 先把username变量不要写死,引用另外一个变量{{env_username}}

而env_username 变量在 Pre-request Script 脚本里面定义

定义env_username  ,并且获取值存放道环境变量中

console.log() 可以在在console控制台查看日志

点 code 按钮可以快速查看http代码,看请求参数是否正确

所有的请求 及 结果均可以查看到

常用的Pre-request Script 中常用代码

pm.globals.unset("variable_key"); 清除全局变量
pm.environment.unset("variable_key");  清除环境变量
pm.globals.get("variable_key");      获取全局变量
pm.variables.get("variable_key");    获取一个变量
pm.environment.get("variable_key");      获取环境变量
pm.sendRequest("https://postman-echo.com/get", function (err, response) {
    console.log(response.json());
});  发送一个请求
pm.globals.set("variable_key", "variable_value");  设置环境变量

可以使用 pm.sendRequest 方法从“pre-request”或“Tests”脚本异步发送请求。
如果您要执行计算或同时发送多个请求,而不必等待每个请求完成,则可以在后台执行逻辑

pre-request 发送请求

点 Send a request 快速生成一个请求示例

  • pm.sendRequest 是发送一个请求
  • function中的err表示请求返回的错误信息,
  • response表示响应内容
  • console.log()是控制台输出日志
 

以下是官方文档:

// Example with a plain string URL
pm.sendRequest('https://postman-echo.com/get', (error, response) => {
  if (error) {
    console.log(error);
  } else {
  console.log(response);
  }
});

// Example with a full-fledged request
const postRequest = {
  url: 'https://postman-echo.com/post',
  method: 'POST',
  header: {
    'Content-Type': 'application/json',
    'X-Foo': 'bar'
  },
  body: {
    mode: 'raw',
    raw: JSON.stringify({ key: 'this is json' })
  }
};
pm.sendRequest(postRequest, (error, response) => {
  console.log(error ? error : response.json());
});

// Example containing a test
pm.sendRequest('https://postman-echo.com/get', (error, response) => {
  if (error) {
    console.log(error);
  }

  pm.test('response should be okay to process', () => {
    pm.expect(error).to.equal(null);
    pm.expect(response).to.have.property('code', 200);
    pm.expect(response).to.have.property('status', 'OK');
  });
});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值