如何使用 Postman 模拟并发?

本文将介绍如何使用 Postman 工具进行接口测试,并提供一些实用技巧,让你更高效地完成接口测试工作。

用 Apifox,节省研发团队的每一分钟

如何使用 Postman 模拟并发?

免费使用 Apifox

相关推荐

最新文章

API

一体化协作平台

API 设计

API 文档

API 调试

自动化测试

API Mock

API Hub

立即体验 Apifox
目录

背景

我们最近在做一个图书管理平台,我主做的模块涉及到的后端接口有这几个:

  • 获取 books 的接口
  • 获取 likes 的接口
  • 获取 collections 的接口

应对高并发?

当我们写一个接口时,并且部署时,一定要考虑一个问题:

  • 你所做的产品访问量大吗?
  • 你所写的接口和服务器能应对访问量大的场景吗?

其实就一句话:你的接口和服务器能应对高并发场景吗?

什么是高并发?举个例子,地铁只有一个入口,10 秒内能通过 1w 个人吗?

那肯定是不行的,那怎么办呢?那就要看你这个地铁入口怎么去做优化了

高并发模拟

但是你再怎么优化,你也不能马上就部署上线吧?肯定要在上线前,做一个规范的高并发模拟,看看你写的接口,以及你的服务器,到底能不能承受住这样的压力

Postman 高并发模拟

创建集合和接口

首先是创建一个集合,并且依次添加

  • 获取 books 的接口
  • 获取 likes 的接口
  • 获取 collections 的接口

然后为了保险起见,在 Test 中添加断言校验

pm.test('返回数据是 books', () => {
    console.log(pm.response.text())
    pm.expect(pm.response.text()).to.include('books')
})

然后点击发送,我们会发现接口发送成功了,断言检验也通过了~~

Postman 模拟并发
创建集合和接口

高并发模拟

但是其实单个接口发送不是我们想要的,我们想要的是:

  • 批量发送接口
  • 频繁发送

所以需要用到 Postman 的 Runner 功能

Postman 模拟并发的Runner功能
Runner 功能

然后进行以下操作:

  • 第一步:将整个集合拖拽进测试区
  • 第二步:设置并发次数
  • 第三步:设置每次并发的延迟
  • 第四步:点击按钮进行高并发模拟
Postman 模拟并发
高并发模拟

并且得到结果报告:

Postman 模拟并发的报告
结果报告

Apifox 更方便做高并发模拟

如果你想要有更好的可视化体验,更加方便快捷地操作,以及对于中文有要求的同学,可以选择 Apifox 进行高并发模拟,它提供了以下功能:

  • 可视化的,清晰的调试选项
  • 本身支持中文显示
  • 模拟过程可视化展示
  • 单个测试用例可点击进入查看

创建接口用例

可以通过可视化的后置操作选项,更加清晰地添加断言校验脚本。

Apifox 模拟并发
后置操作
Apifox 模拟并发结果
添加断言校验脚本

创建测试用例

创建测试用例,可设置测试用例的优先级

Apifox 创建测试用例
创建测试用例

开始高并发模拟

点击进入测试用例,并选择导入接口用例

Apifox 高并发模拟
导入接口用例

右方的参数可设置一些重要运行参数:

  • 运行环境
  • 循环次数
  • 循环次数延迟
  • 遇到错误时忽略与否

点击运行按钮,可以清晰看到运行过程的可视化展示,包括:

  • 运行数量百分比
  • 通过率
  • 失败率
  • 未测数

等等

Apifox 模拟并发结果
测试报告

并且在运行完成后,也可获取到整体的:

  • 总耗时
  • 平均接口耗时
  • 循环数
  • 断言数

你也可以选择导出测试报告,并分享给其他同事进行观看

Apifox 模拟并发结果导出报告
导出报告

如果你想单独看某一个测试例子的具体数据,可以点击对应的更多详情按钮,进行查看

Apifox 模拟并发详情
更多详情
Apifox 模拟并发
具体数据

结语

PostmanApifox 都提供了高并发模拟这一功能,但是个人 Apifox 有以下优点:

  • 本身支持中文
  • 可视化选择脚本操作
  • 可视化展示运行过程
  • 可查看单个运行用例的详细数据
Apifox 自动化测试编排

知识扩展

了解更多 Postman 相关使用技巧: