postman参数化定义,批量自动化参数

1.把请求响应作为变量

在tests出加上引用响应的参数,并把在postman环境变量新建对应的名字,接口运行时,自动赋值到环境环境

var response = JSON.parse(responseBody); # 获取响应体

pm.environment.set("T1",response.edited[0][0]); # 把响应体的edited[0][0]作为变量T1的值

环境变量设置:

定义好的变量引用:

2.批跑用例,接口的参数化(每次迭代的请求使用不同的参数)

 文件夹run,进入批量调试界面

参数文件可以txt和json格式

文件格式:

json格式

txt格式

参数调用:

与环境变量调用方式一直

 

 

 

 

 

### 在 Postman 中实现并发请求的方法 尽管 Postman 本身的设计是以串行方式执行集合中的请求[^1],但仍然可以通过以下方法实现并发请求的效果: #### 1. 使用 Newman 工具结合脚本 Newman 是 Postman 提供的命令行工具,可以运行集合并支持自定义脚本。通过编写外部脚本(如 Node.js 或 Python),可以模拟并发请求。 以下是一个使用 Node.js 实现并发请求的示例代码: ```javascript const axios = require('axios'); const fs = require('fs'); // 读取 Postman 集合文件 const collection = JSON.parse(fs.readFileSync('./your-collection.json')); // 并发请求函数 async function sendConcurrentRequests() { const requests = collection.item.map(item => { return axios({ method: item.request.method, url: item.request.url.raw, headers: item.request.header ? item.request.header.reduce((acc, curr) => { acc[curr.key] = curr.value; return acc; }, {}) : {}, data: item.request.body ? JSON.stringify(item.request.body.raw) : null }); }); // 发送所有请求 const responses = await Promise.all(requests); responses.forEach(response => console.log(response.data)); } sendConcurrentRequests(); ``` 此方法通过 `Promise.all` 同时发起多个请求,从而实现并发效果[^2]。 #### 2. 利用 Postman 的 `pm.sendRequest` 在 Postman 的测试脚本中,可以使用 `pm.sendRequest` 方法发起额外的请求。这种方法适用于需要在当前请求完成后立即发送其他请求的场景。 示例如下: ```javascript pm.sendRequest({ url: 'https://example.com/api/data', method: 'GET', header: { 'Content-Type': 'application/json' } }, function (err, response) { if (err) { console.error(err); } else { console.log(response.text()); } }); ``` 虽然这种方式可以在单个请求中发起多个子请求,但由于 Postman 的设计限制,它仍然以串行方式处理集合中的请求[^3]。 #### 3. 使用第三方工具扩展功能 如果 Postman 的内置功能无法满足需求,可以考虑使用其他工具,如 Apifox。Apifox 支持多线程测试,并允许用户设置线程数和循环数以模拟并发场景。 #### 4. 注意事项 - 在进行并发请求测试时,确保服务器能够承受高负载,避免对生产环境造成影响。 - 如果需要验证大量数据或复杂场景,建议结合自动化测试框架(如 Selenium 或 Cypress)与 API 测试工具一起使用。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值