千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > 使用Postman实现并发请求

使用Postman实现并发请求

来源:千锋教育
发布人:xqq
时间: 2023-11-24 06:03:18 1700776998

一、前言

在进行接口测试的过程中,有时候需要对某个接口进行并发测试,测试接口在并发情况下的稳定性和性能等。这时候,我们可以使用Postman来实现并发请求。在本文中,我们将从以下方面对Postman并发请求进行详细讲解:

使用Postman Collection Runner进行并发请求 使用Postman的Pre-request Script来实现并发请求 并发请求的注意事项

二、使用Postman Collection Runner进行并发请求

Postman Collection Runner 是 Postman 中进行批量测试的一种工具。它可以针对已经保存为 Collection 的接口,进行多组不同参数的快速测试。Collection Runner 不仅可以实现并发请求,还可以对不同的请求进行顺序、随机或循环执行。

首先,我们需要在 Postman 中预先创建好需要进行并发测试的接口集合(Collection)和对应的环境变量。如下图所示:

点击 Collection Runner,进入 Collection Runner 界面,选择相应的 Collection 和环境变量。

在 Collection Runner 界面中,我们可以选择在运行时使用不同的数据文件,例如 CSV 文件或 JSON 文件,来进行数据驱动测试。

在并发请求的场景中,我们需要在 Data 栏中填入请求参数,设置完成后,点击“Start Run”按钮开始并发请求。


{
  "data": [
    {
      "name": "param1",
      "value": "123"
    },
    {
      "name": "param2",
      "value": "456"
    },
    {
      "name": "param3",
      "value": "789"
    }
  ],
  "dataMode": "params"
}

如上图所示,我们可以设置并发执行的请求数量和间隔时间,进行测试,通过 Collection Runner 中的结果面板,查看每个接口请求的返回结果。并发请求的结果可以进行导出和统计分析。

三、使用Postman的Pre-request Script来实现并发请求

在使用Postman Collection Runner进行并发请求时,我们只能使用已经保存在 Collection 中的接口进行测试。如果我们需要对其他接口进行并发请求测试,那么就需要使用Postman的 Pre-request Script 功能来进行开发。

Pre-request Script 功能最常见的使用场景是对接口参数进行数据处理,生成动态的请求参数,我们可以利用这个功能,对请求参数进行自由的处理和设置,以达到并发请求的效果。例如,我们可以使用JavaScript代码,对请求参数中的一些字段进行随机、循环等处理,以生成多组请求参数。以下是一个使用 Pre-request Script 实现并发请求的示例:


let counter = 100;
pm.collectionVariables.set("counter", counter);

pm.sendRequest({
    url: pm.environment.get('baseUrl') + '/api',
    method: 'POST',
    header: {
        'Content-Type': 'application/json'
    },
    body: {
        mode: 'raw',
        raw: JSON.stringify({
            "param1": "value1",
            "param2": "value2",
            "param3": "{{$randomInt}}",
            "param4": "{{$moment().format('YYYY-MM-DD')}}"
        })
    }
}, function (err, res) {
    if (err) {
        console.log(err);
    } else {
        if (--counter > 0) {
            console.log(counter);
            pm.sendRequest(request, function (err, res) {});
        } else {
            console.log("done");
        }
    }
});

在上述代码中,我们使用计数器的方式来实现并发请求。我们首先设置计数器的初始值为100,并将其通过 pm.collectionVariables.set 方法存入 Collection 变量中。

接着,我们可以使用 pm.sendRequest 方法来实现发送请求,并将结果输出到 Postman 的 Console 窗口中。注意,在使用 Pre-request Script 实现并发请求时,我们需要手动设置请求头信息、请求方法、请求体等各项内容。

对于请求体中需要动态生成的参数,我们可以使用 Postman 内置函数来进行处理。例如,上述代码中使用了 $randomInt 函数来生成随机整数,使用双括号语法(Example: {{$randomInt}})来引用 Postman 内置函数。

四、并发请求的注意事项

在使用 Postman 进行并发请求时,需要注意以下几点:

并发请求会对被测服务产生一定的压力,避免在生产环境中进行大规模并发测试。 并发请求可能会产生数据争用、锁竞争等问题,需要根据测试需求、场景进行调整和处理。 并发请求需要对测试数据进行较高规模的准备,比如需要准备大量的测试数据文件,或者使用动态数据生成器。 并发请求可能会影响接口的实际响应时间。一般情况下不建议过多地使用并发请求,以保证接口的稳定性和性能。

五、总结

本文详细介绍了使用 Postman 进行并发请求的方法,主要包括使用 Collection Runner 和 Pre-request Script 两种方式。通过本文的学习,可以使我们更加了解 Postman 并发请求的原理和使用方法,从而更好的进行接口测试和性能测试。

tags: pythonimshow
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT