更新时间:2023-12-18 GMT+08:00

压力配置

操作步骤

  1. 登录性能测试服务控制台,在左侧导航栏中选择“PerfTest测试工程”
  2. 在待编辑PerfTest测试工程所在行,单击工程名称进入测试工程详情页面。
  3. 选择“测试用例”页签,在左侧“用例列表”下选择待配置的测试用例。
  4. 选择页面右侧的“压力配置”,参照表1设置阶段参数。

    • 一个用例最多添加1000个阶段。
    表1 添加阶段

    参数

    参数说明

    阶段名称

    自定义阶段名称,用于区分不同的阶段,比如首页测试。

    压力模式

    压力模式目前支持以下几种模式:

    • 并发模式:用例按照固定或者梯度递增的并发用户数进行压测。
    • TPS模式:用例按照每秒指定的事务数进行压测。TPS模式中,一个虚拟用户执行一次测试用例为一个事务。实际压测时,能否达到指定的事务数取决于最大并发数和事务平均响应时延。
    • 摸高模式:用例按照指定的爬坡时间由最小并发用户数线性递增到最大用户并发数后保持在峰值并发用户数进行压测。
    • 浪涌模式:用例按照周期性变化的并发用户数进行压测,每个周期先按照最小并发用户数压测,再按照最大并发用户数压测。按最大并发用户数压测时长可自定义,周期数为设定的浪涌次数。
    • 震荡模式:用例按照周期性波动的并发用户数进行压测,每个周期用户数在最小并发数和最大并发数之间波动。周期数为设定的震荡次数。
    • 智能摸高:用例按照指定的单步执行时长由最小并发用户数按递增并发数逐步到最大用户并发数后保持在峰值并发用户数进行压测。
      说明:

      执行器按设定的梯度逐步增加并发数进行压测,压测时,后台会为每个并发梯度生成一个“阶段数据”,当某个阶段的数据相比前一个阶段有发生明显的性能拐点时,系统判定到达性能峰值。其中性能拐点通过以下场景定义:成功率小于阈值(默认100%)、RPS曲线下降、rt/tp90/tp99曲线出现较大的斜率变化。

    执行策略

    执行策略目前支持按时长和按次数。

    • 按时长:按照设定的持续时间进行压测。
    • 按次数:按照设定的发送总次数进行压测。
    说明:

    当前仅并发模式和TPS模式涉及该参数。

    调压模式

    在压测过程中调整压力,目前支持自动调压和手动调压。

    • 自动调压:自动调压的并发上限为所有阶段中最高的并发用户数。
    • 手动调压:手动调压的并发上限为最大并发数。手动调压后原有多阶段压力配置失效。
    说明:

    当前仅并发模式和TPS模式且执行策略为按时长时涉及该参数。

    当“压力模式”为“并发模式”、“执行策略”为“按时长”,“调压模式”为“自动调压”且“梯度递增”关闭时,需要配置以下参数:

    并发数

    并发数指在同一时刻内,对系统进行业务操作的用户数量。

    在性能测试服务中为用户在定义测试任务阶段设置的虚拟用户数。

    压测时长(分钟)

    本阶段压测执行的时间。

    当“压力模式”为“并发模式”、“执行策略”为“按时长”,“调压模式”为“手动调压”时,需要配置以下参数:

    最大并发数

    执行测试用例的最大虚拟用户数。

    起始并发数

    执行测试用例的起始虚拟用户数。

    压测时长(分钟)

    本阶段压测执行的时间。

    当“压力模式”为“并发模式”、“执行策略”为“按时长”,“调压模式”为“自动调压”且“梯度递增”打开时,需要配置以下参数:

    说明:

    一个用例只能设置一个“梯度递增”阶段。

    起始并发数

    梯度递增的起始并发用户数量。

    递增总并发数

    一共会增加的并发用户数。梯度递增中,第一个子阶段并发用户为起始并发用户数,其余每个子阶段的并发用户为上一阶段并发用户数+递增总并发用户*递增量级,最后一个子阶段并发用户为起始并发用户数+递增总并发用户数。

    递增量级

    每个子阶段增加的并发用户数=递增总并发用户*递增量级。

    递增量级包含:5%、10%、20%、50%。

    单量持续时间(分钟)

    每个子阶段压测执行的时间。

    当“压力模式”为“并发模式”、“执行策略”为“按次数”,需要配置以下参数:

    说明:

    只能添加单阶段。

    并发数

    并发用户数指在同一时刻内,对系统进行业务操作的用户数量。

    在性能测试服务中为用户在定义测试任务阶段设置的虚拟用户数。

    发送总次数

    该用例在一次任务的运行中,将按照运行次数计算,到达设定数值,该任务下此用例的性能测试将终止。

    说明:

    发送总次数不小于并发用户数。

    当“压力模式”为“TPS模式”、“执行策略”为“按时长”且“调压模式”为“自动调压”,需要配置以下参数:

    最大并发数

    执行测试用例的最大虚拟用户数。

    TPS值

    设定每秒执行事务的数量。

    压测时长(分钟)

    本阶段压测执行的时间。

    当“压力模式”为“TPS模式”、“执行策略”为“按时长”且“调压模式”为“手动调压”,需要配置以下参数:

    最大并发数

    执行测试用例的最大虚拟用户数。

    起始并发数

    执行测试用例的起始虚拟用户数。

    TPS值

    设定每秒执行事务的数量。

    压测时长(分钟)

    本阶段压测执行的时间。

    当“压力模式”为“TPS模式”、“执行策略”为“按次数”,需要配置以下参数:

    说明:

    只能添加单阶段。

    最大并发数

    执行测试用例的最大虚拟用户数。

    TPS值

    设定每秒执行事务的数量。

    发送总次数(次)

    该用例在一次任务的运行中,将按照运行次数计算,到达设定数值,该任务下此用例的性能测试将终止。

    说明:

    发送总次数不小于并发用户数。

    当“压力模式”为“摸高模式”,需要配置以下参数:

    起始并发数

    执行测试用例的起始虚拟用户数。

    最大并发数

    执行测试用例的最大虚拟用户数。

    爬坡时间(秒)

    虚拟用户数从起始并发数线性递增到最大并发数的时长。

    说明:

    建议爬坡时间小于持续时间。爬坡时间与持续时间相同且并发量较大的情况下,采样到的最大并发可能会略小于设置的最大并发数。

    压测时长(分钟)

    压测执行的时间。

    摸高期望指标

    • 响应时间:最大值为60000ms。
    • 成功率:最小值为0。

    摸高模式下,期望被测系统的请求响应时间小于等于输入值,请求成功率大于等于输入值,摸高分析规则为其中一个指标首次出现连续6秒未达标的情况时(比如响应时间连续6s大于期望值),摸高分析完成后,取其中第一秒的数据为摸高结果。

    说明:

    当用例执行达到探底期望指标后,任务不会停止,会继续执行。

    当“压力模式”为“浪涌模式”,需要配置以下参数:

    压测时长(分钟)

    压测执行的时间。

    最大并发数

    执行测试用例的最大虚拟用户数,也是虚拟用户数变化过程峰值。

    最小并发数

    执行测试用例的最小虚拟用户数,也是虚拟用户数变化过程的最小值。

    浪涌次数

    在持续时间内,虚拟用户数变化的周期数。

    峰值持续时间(秒)

    一个周期内,按最大并发虚拟用户数压测的持续时间。

    当“压力模式”为“震荡模式”,需要配置以下参数:

    压测时长(分钟)

    压测执行的时间。

    最大并发数

    执行测试用例的最大虚拟用户数,也是虚拟用户数波动过程的波峰值。

    最小并发数

    执行测试用例的最小虚拟用户数,也是虚拟用户数波动过程的波谷值。

    震荡次数

    在持续时间内,虚拟用户数波动变化的周期数。

    当“压力模式”为“智能摸高模式”,需要配置以下参数:

    起始并发数

    执行测试用例的起始虚拟用户数。

    递增并发数

    每步增加的虚拟用户数。

    说明:
    • 递增并发数非线性增长,执行时会指数增加。

    单步执行时长(秒)

    每步执行的时间,建议配置至少20秒以上。

    压测时长(分钟)

    压测执行的时间,建议配置30分钟以内。

    说明:
    • 当成功率小于阈值(默认100%)、RPS曲线下降、rt/tp90/tp99曲线出现较大的斜率变化,任务会停止压测。

    成功率阈值

    摸高时可容忍的成功率,默认值100。

  5. 配置完成后,单击“保存”