性能测试
8.1.4版本起,Apipost支持在自动化测试中进行【性能测试】,帮助开发者和测试人员高效地评估和优化API(应用程序接口)的性能。
注意:该功能仅限客户端体验
功能介绍
压测模式
目前压测支持两种模式:固定模式、爬坡模式
固定模式:设置一个固定的并发数,在压测期间始终以这个固定数值进行发压,发压示意图如下
爬坡模式:会有初始并发、初始并发的持续时间、爬坡区间(初始并发到最大并发的区间)、爬坡时长、最大并发、最大并发持续时间,可以从一个小的并发开始然后逐渐升至最大并发,发压示意图如下
压测中
在编排好测试用例(查看如何编排测试用例)以及配置好压测条件后,点击【执行】或【保存并执行】即可以进行性能测试 注意:点击【保存并执行】生成的报告才会进行存储,仅【执行】不会存储生成的测试报告
压测过程中我们可以实时查看压测的各项指标,例如请求数、失败请求数、响应时间、平均响应时间等,压测的失败详情则是在压测结束后才会提供
压测过程中不支持关闭抽屉弹窗,强行关闭则代表不继续进行压测
压测报告解读
结果概览和接口压测详情
| 指 标 | 含义 |
| --- | --- |
| 总请求数 | 压测期间累计发送的总请求数。单位(次) |
| 失败数 |压测期间累计发送的失败请求数,失败请求的统计包含两类情况:
1)HTTP状态码非2xx;
2)断言失败。满足其一,则为失败。
若同时满足,错误原因将归类到【HTTP状态码非2XX】。|
| 失败率 | 失败数/总请求数 * 100% |
| 平均响应时间 | 压测期间请求的响应时间均值。|
| 最小响应时间 |压测期间请求的最小响应时间 |
| 最大响应时间 |压测期间请求的最大响应时间 |
| TPS |整个压测执行期间所有执行的接口总数 / (整个压测里面的接口最后一次请求的时间 - 整个计划里面接口第一次的请求时间)。单位 (次/秒) |
| 平均接收流量 |压测期间请求的接收流量均值。|
| 每秒请求数 | 整个压测执行期间所有执行的接口总数 / 压测时长。单位 (次/秒) |
| 90%(ms) |把所有响应时间的数值从小到大排序,取前 90% 位置的值,即为该分位的值。例如: 将采集到的 100 个数据,从小到大排列,取出第 90 个数据做统计。 表示90%请求将在这个时间内完成。 |
| 95%(ms) | 把所有响应时间的数值从小到大排序,取前 95% 位置的值,即为该分位的值。例如: 将采集到的 100 个数据,从小到大排列,取出第 95个数据做统计。表示95%请求将在这个时间内完成。 |
| 99%(ms) | 把所有响应时间的数值从小到大排序,取前 99% 位置的值,即为该分位的值。例如: 将采集到的 100 个数据,从小到大排列,取出第 99 个数据做统计。表示99%请求将在这个时间内完成。 |
性能趋势图
实时的数据趋势图,反应的是压测期间指标的动态变化趋势
Top5失败原因
在压测期间失败原因汇总,发生次数最多的5个原因
失败趋势图
压测期间每个失败原因发生次数的趋势图
失败详情
支持查看每个失败原因都是由哪些请求导致的,点击接口可以查看具体的接口请求和返回明细