如何使用PostMan进行并发测试?

如何使用PostMan进行并发测试?

👀(Postman 的 runner 实际上是串行执行的,因此不能作为并发测试, 只是批量测试,本文如下称为并发的是错误的)

文章目录

POST篇

要在Postman中对POST请求进行压力测试,可以按照以下步骤进行操作:

  1. 打开Postman应用程序并创建一个新的请求集合(Collection)。
  2. 在请求集合中创建一个新的请求,并选择HTTP方法为POST。
  3. 在请求URL字段中输入要测试的目标URL地址。
  4. 在请求主体(Body)部分中输入POST请求的有效载荷(Payload)数据。
  5. 配置请求头(Headers)和其他必要的参数。
  6. 在Postman界面的右上角,找到"Runner"按钮并点击它。
  7. 进入运行器(Runner)界面,选择之前创建的请求集合,并配置运行参数。
  8. 可以设置运行器的迭代次数、并发请求数量、延迟时间等选项,根据需要进行调整。
  9. 点击"Start Run"按钮开始运行压力测试。
  10. 运行结束后,可以查看每个请求的响应结果和性能指标,如响应时间、吞吐量等。

请注意,进行压力测试时要确保目标服务器能够承受相应的负载。此外,压力测试可能会对目标服务器产生一定的负担,请谨慎操作,避免对生产环境或敏感系统造成不良影响。

流程

复制代码
{
    "type": "0",
    "branchId": "007ad91b716b44b18d9e9bbc0a265237",
    "supplierAmt": 100.00,
    "expectDate": "2023-12-01",
    "remark": "",
    "productList": [
        {
            "id": "{{id}}",
            "procureId": "{{procureId}}",
            "productId": "40289cb786e3cf260186e99873da0001",
            "productNum": 3,
            "categoryId": "40288d3c7a7faba8017a7fbcffd80000",
            "specId": null,
            "rowStatus": "1",
            "createUser": null,
            "createDate": null,
            "updateUser": null,
            "updateDate": null,
            "productName": "美的电烤箱",
            "categoryName": "家用电器",
            "inventoryCount": 14.00,
            "costPrice": null,
            "totalPrice": 1500.00
        }
    ]
}

id 和 procureId 均是唯一的,不能插入重复,因此要在Pre-req中设置变量

Pre-req 脚本 js

js 复制代码
// 生成不带连字符的唯一标识符
function generateUniqueIdentifier() {
    var d = new Date().getTime();
    var uuid = 'xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
        var r = (d + Math.random() * 16) % 16 | 0;
        d = Math.floor(d / 16);
        return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16);
    });
    return uuid.replace(/-/g, '');
}

// 将唯一标识符赋值给请求的变量
pm.variables.set("id", generateUniqueIdentifier());
console.log(generateUniqueIdentifier())

//生成订单编号
// 生成P+ yyyyMMddHHmmss + 6位随机数的唯一标识符
function generateP() {
    var date = new Date();
    var dateString = date.getFullYear() +
                     ('0' + (date.getMonth() + 1)).slice(-2) +
                     ('0' + date.getDate()).slice(-2) +
                     ('0' + date.getHours()).slice(-2) +
                     ('0' + date.getMinutes()).slice(-2) +
                     ('0' + date.getSeconds()).slice(-2);
    var randomNumber = Math.floor(Math.random() * 900000) + 100000;
    return 'P' + dateString + randomNumber;
}

// 将唯一标识符赋值给请求的变量
pm.variables.set("procureId", generateP());

在这里(View -> Show Postman Console)可以看到log的内容

生成的id: a54dc69c8ba94dffb2a0813fcf88c069

生成的procureId: P20231201132925285867

并发操作步骤

结果

GET篇

添加环境变量

引用变量

相关推荐
今天小迪敲代码了吗3 小时前
【自学】接口测试
postman
测试人社区—03924 小时前
UI测试在DevOps流水线中的卡点设计:质量保障的智能防线
运维·驱动开发·测试工具·ui·ar·vr·devops
实时数据6 小时前
Selenium常用于网页爬取 为了提高爬取效率,可以采取以下优化措施:合理使用无头模式
selenium·测试工具·数据挖掘
zhaoyin19946 小时前
fiddler抓包工具使用
前端·测试工具·fiddler
实时数据6 小时前
网络爬虫已成为获取互联网数据的重要手段。Selenium 作为一种强大的自动化测试工具,
爬虫·selenium·测试工具
佟以冬8 小时前
Wireshark抓包基础
网络·测试工具·安全·网络安全·wireshark
实时数据8 小时前
优化 Selenium 使用文本挖掘在分析留言数据中提供了多种应用 如情感分析、主题建模、关键词提取和文本分类
selenium·测试工具
灵翼飞航科技有限公司8 小时前
无人机动力测试系统光电传感器原理及操作说明(二)
测试工具·无人机
灵翼飞航科技有限公司9 小时前
要完成无人机动力测试需要都需要准备什么?
测试工具·无人机
Wpa.wk9 小时前
curl-发送请求 和 tcpdump与wireshark的介绍
测试工具·wireshark·tcpdump·curl