手记

后端也要了解接口性能测试?

事情是这样的,公司有个项目上线之后,在Skywalking的接口监控面板,发现其中一个微服务的接口超时频率很高。

经过一番排查,发现是接口性能不好。

  • 👧 测试同学: 你最近开发的接口高峰期总是超时,5秒都还没返回结果,线上很多接口超时,你自己测试一下看看

  • 👦 后端同学:我排查一下

一般而言,在交付给测试同学验证前,开发自测是必不可少了,而对于接口性能,因为不同责分工,后端同学往往是简单自测下接口性能,基本上不涉及压测,大部分压测工作都是测试同学在做

遇到这种情况,其实我们可以对自己的接口进行一个简单的压力测试。

🍐 压测,关注的点主要有:

  • ⏰ 接口响应时间
  • 👪 并发用户数
  • 🌊 吞吐量
  • ⌛️ TPS(每秒事务处理数)
  • 💻 资源利用率(CPU、内存等)

压完之后我们再看下服务器的运行情况,下图是以prometheus+granfa作为监控演示

聊到这里你的测试同学可能会给你推荐Jmeter,那烟花缭乱的配置可以直接劝退你

因为我们只是做个简单的压测,配置方面关注的点主要

  • 线程数
  • 循环次数
  • 间隔停顿:测试用例之间的间隔时间
  • 持续时间

而最近在用Apifox做接口管理的时候,发现这个接口工具竟然也有接口性能测试这个功能!

我只需要在Apifox简单的配置下性能测试参数后,我即可知晓接口性能测试情况

这里整理了一份教程,带你5分钟带你玩转接口压力测试

上手

打开Apifox,并选择左侧Tab面板的自动化测试,点击右侧面板的新建测试用例

测试用例创建成功之后,点击该测试用例进入详情页,并进行添加步骤,可选择

  • 从接口用例导入
  • 从接口导入

导入成功之后,数据就会自动填充到测试测试面板中,你可以对需要测试的接口进行选择,最后配置下右边区域的配置

  • 配置循环次数(每个线程运行所有步骤的次数)
  • 配置线程数 (同时并发运行的线程数)
  • 配置间隔停顿 (一个测试用例运行完用,停顿一段时间,在运行下个用例)

⏰ 注意事项:只有设置线程数大于1才可实现性能测试。

对测试用例配置完之后,我们运行后会得到下方的报告,包括总耗时,平均接口请求耗时,循环数等等,同时也可以将报告导出为pdf

最后点击详情可以看到详细的接口测试结果

进阶用法(CICD)

如果你想在Jenkin或者Gitlab做CICD自动化测试,你可以使用Apifox推出的Apifox CLI

点击测试用例详情中的持续集成按钮,并新建一个配置,对配置进行编辑后,点击保存就可以生成CLI 命令行,这样你就可以在服务器通过该CLI完成自动化测试

0人推荐
随时随地看视频
慕课网APP