当您需要定期执行压测任务,来检测核心链路,验证迭代和系统架构能力时,可以使用定时压测功能。定时压测可以指定测试任务的执行日期、执行时间、循环周期和通知方式等。本文介绍了如何设置定时压测以及定时压测任务的修改、删除等相关操作。

前提条件

已创建压测场景,并完成场景调试。为确保压测任务的可执行性,PTS压测必须要进行场景调试。具体操作,请参见创建PTS压测调试场景

限制条件

  • 定时压测功能及定时任务数量均受限于资源包规格。具体规格请参见资源包说明
  • 一个压测场景仅支持添加一个定时压测任务。
  • 已配置定时任务的场景不可再编辑。

新场景定时压测

创建新的压测场景时,以定时任务的方式启动压测。压测场景创建完成后,启动压测时选择定时压测,即可添加该场景的定时任务。

  1. 登录PTS控制台,在左侧导航栏选择性能测试 > 创建场景,然后单击PTS压测

  2. 场景配置施压配置页签,设置相关参数。具体操作,请参见创建压测场景施压配置
  3. 在创建压测页面左下角单击保存去压测,然后在弹出的温馨提示对话框中,选择执行周期定时压测,并填写相关配置项。

    说明 为了保证顺利执行定时任务,您需要先完成压测场景调试,再进行定时压测。调试场景的具体操作,请参见调试场景
    配置项 说明
    执行周期 选择定时压测
    任务名称 填写任务名称,30个字符以内。
    执行频率
    • 选择仅执行一次,指定日期和时间,可具体到分钟。
    • 选择定期执行
      • 单击日粒度,选择一个或多个日期执行压测。
      • 单击周粒度,选择在一周中的一天或几天执行压测。
      • 单击高级,编写crontab高级表达式自定义执行时间,请参见crontab表达式
    说明 日粒度、周粒度和高级三个方式中,只能选择一种方式设置执行时间。
    执行通知方式 可多选:
    • 压测开始前通知。
    • 压测结束后通知。
    执行通知方式 选择短信、邮件或钉钉作为通知方式,目前仅支持钉钉。
  4. 单击确定,定时任务将自动添加到压测日历中。
  5. 登录PTS控制台,在左侧导航栏选择性能测试 > 定时压测

  6. 在日历中,单击刚刚添加的定时压测任务,可预览待执行任务。控制台定时压测

已有场景定时压测

定时压测页面,可以将已有压测场景添加到指定日期,预约定时压测。

  1. 登录PTS控制台,在左侧导航栏选择性能测试 > 定时压测

  2. 在日历中,单击要执行压测的日期。

  3. 在页面右侧单击创建定时任务,配置定时任务选项,完成后单击确定

    配置项 说明
    任务名称 填写任务名称,30个字符以内。
    关联场景 下拉列表中,选择关联的压测场景。
    说明 若使用PTS压测,则需先调试压测场景,否则无法添加到定时任务中。调试场景具体操作,请参见调试场景
    执行频率
    • 选择仅执行一次,指定日期和时间,可具体到分钟。
    • 选择定期执行
      • 单击日粒度,选择一个或多个日期执行压测。
      • 单击周粒度,选择在一周中的一天或几天执行压测。
      • 单击高级,编写crontab高级表达式自定义执行时间,请参见crontab表达式
    说明 日粒度、周粒度和高级三个方式中,只能选择一种方式设置执行时间。
    执行通知方式 可多选:
    通知对象及通知方式 选择通知对象和方式:
    • 通知对象:选择在PTS中已创建的联系人作为通知对象。
    • 通知方式:选择短信、邮件或钉钉作为通知方式,目前仅支持钉钉。
    说明 关于如何创建联系人,请参见管理接收人
    多场景是否强制同时启动 选择是否同时启动多个场景的定时压测任务。

管理定时任务

您可以通过定时压测日历,选择某天的定时任务,查看、编辑、删除该定时任务。

查看和编辑定时任务

  1. 登录PTS控制台,在左侧导航栏选择性能测试 > 定时压测

  2. 在定时压测日历中,单击某一个定时压测任务,可在右侧面板中查看详情。
  3. 在日历上方单击本月未调度,弹出当月待执行任务的弹窗,单击场景名,可进入该场景的编辑页面。定时压测

删除定时任务

删除定时任务将删掉该定时任务中的所有循环任务,无法单独删除某个循环中的子任务。但已经执行过的任务记录将保留到日历中,不会被清除。您可通过两种方式删除定时任务:

  • 方式一:
    1. 登录PTS控制台,在左侧导航栏选择性能测试 > 定时压测

    2. 在定时压测日历中,单击某一个定时压测任务(日历视图中某一条详细的任务记录)。
    3. 单击页面右上角的删除,将删除该定时任务指定周期内所有未执行的循环任务(如果存在)。
  • 方式二:
    1. 登录PTS控制台,在左侧导航栏选择性能测试 > 场景列表

    2. 在场景列表中,找到需要删除的定时压测任务,在其操作列,单击解除定时任务。将删除该定时任务指定周期内的所有循环任务。

crontab表达式

如果您需要从更细维度自定义定时任务的执行时间,可以使用crontab表达式。时间间隔的单位可以是分钟、小时、日、周或月的任意组合。

在创建定时任务时,执行频率选择定期执行,单击高级,设置crontab表达式。

crontab表达式
  • 只能选择按照日或者周,指定执行压测时间。日和周只能二选一,指定日或周之后,另外一个输入框内需填写?,表示不受限制。例如,上图所示,指定了每个月1、2号,需填写?
  • 在crontab表达式内,请使用英文字符,例如星号(*)、半角问号(?)。
  • 多个值之间用英文逗号(,)分隔。
  • 值的区间用短划线(-)连接,例如输入框内填写1-5,表示1号至5号。
  • 填写周时,1表示周日,7表示周六;即每周从周日到周六的数字为1-7
  • 正斜线(/)可以用来指定间隔频率,例如间隔2天,用*/2表示。
  • crontab表达式由5列数字组合而成,取值说明如下:

    • (分钟):0-59
    • (小时):0-23,0表示夜晚的12点。
    • (每个月的具体日期):1-31
    • :不可修改,目前仅支持每个月。
    • (星期):1-7,1表示星期日,2表示星期一,以此类推。

    crontab表达式示例

    • 每星期六、星期日的23:00执行。

      定期执行1.png
    • 每月5、15、25日的09:30执行。

      定期执行2.png
    • 每隔两天的零点执行。

      定期执行3.png