检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
方案概述 应用场景 用户在使用本地JMeter进行压测时,为应对不同的压测需求,需要安装各种插件。为了方便查看可视化的测试报告,可以在性能测试服务中引入JMeter测试工程。PerfTest-JMeter测试工程旨在为用户提供JMeter原生引擎的支持,用户可在PerfTest-
计费模式概述 性能测试服务提供按需计费模式和按套餐包计费模式。使用性能测试服务时,需购买大于压测任务的最大并发数的套餐包,方可使用性能测试服务执行压测任务。按需套餐包计费时,优先扣除有效期内的按需套餐包的VUM额度,超出按需套餐包的部分以按需计费模式进行结算。如果您未购买套餐包,将不可使用性能测试服务执行压测任务。
全局变量创建、删除 可扩展测试工程的全局变量以目录形式组织和管理。 新建变量 登录性能测试服务控制台,在左侧导航栏中选择“PerfTest测试工程”。 在待编辑PerfTest测试工程所在行,单击工程名称进入测试工程详情页面。 选择“测试用例”页签,在左侧“用例列表”下选择已创建的测试用例,单击“全局变量”。
管理JMeter测试计划 创建测试计划 测试计划是指基于已定义的JMeter文件和依赖的jar包和变量文件发起一次性能测试的活动。 登录性能测试服务控制台,在左侧导航栏中选择“JMeter测试工程”,单击待操作工程后的。 在“测试计划”页签中,单击“创建测试计划”。 在弹出的窗口中单击“添加文件”,选择格式为*
JMeter与PerfTest字段对应关系 性能测试服务支持JMeter脚本导入及自动切换。JMeter字段与PerfTest字段的对应关系如表1。 表1 JMeter字段与PerfTest字段对应关系 JMeter字段 PerfTest字段 参数解释 线程组 名称 事务名称/任务名称
添加数据指令、循环控制器、条件判断、集合点 数据指令 登录性能测试服务控制台,在左侧导航栏中选择“PerfTest测试工程”。 在待编辑PerfTest测试工程所在行,单击工程名称进入测试工程详情页面。 选择“测试用例”页签,在左侧“用例列表”下选择待添加数据指令的测试用例。 在“用例步骤”页签下,单击“更多
创建定时压测任务 前提条件 已创建PerfTest或JMeter测试工程,且测试工程中包含有测试任务。 操作步骤 登录性能测试服务控制台,在左侧导航栏中选择“定时压测”,单击“创建定时压测任务”。 参照表1设置基本信息。 表1 创建定时压测任务 参数 参数说明 关联工程 选择已创
插件使用 依照约定编译好so文件和json文件后,将文件上传到PerfTest测试工程,在测试用例中添加自定义请求、自定义函数或自定义检查点。 添加插件 登录性能测试服务控制台,在左侧导航栏中选择“PerfTest测试工程”。 在待编辑PerfTest测试工程所在行,单击工程名称进入测试工程详情页面。
本地编写JMeter脚本 启动JMeter客户端。 创建线程组。 在JMeter客户端左上角“Test Plan”上右击,选择“Add > Threads(Users) > Thread Group”,为JMeter测试计划创建线程组,线程组是JMeter工程的基本执行单位。 图1
按套餐包计费使用说明 套餐包使用注意事项 按需套餐包费用为一次性支付,即刻生效,暂不支持指定日期生效、续订和退订。按需套餐包到期后,未使用的VUM会被清零,请留意套餐包即将到期的提醒。 包周期套餐包费用为一次性支付,即刻生效,暂不支持指定日期生效、不支持退订,支持续订。 套餐包到
计费项 计费说明 性能测试服务的费用包括两部分:所使用资源的费用和使用性能测试服务的费用。 所使用资源的费用:包括计算(云容器引擎CCE和弹性云服务器ECS)、网络(弹性负载均衡ELB和弹性公网EIP)和存储(对象存储服务OBS)等资源的费用,此费用由对应的云服务计费,性能测试服务不再单独收费。
添加请求信息(响应提取) 如果同一用例中存在多个报文,通过正则表达式或JSON提取把前一个报文的输出提取出来,作后一个报文的输入。 例如,在电商抢购场景中,您搜索对应的商品之后购买该产品,可使用响应提取功能,提取“搜索”报文得到的商品id作为下一个“购买”报文的输入参数。 约束与限制
使用JMeter原生压测 JMeter测试计划调试成功后,保存jmx文件以及csv文件。 准备测试资源,创建私有资源组。 登录性能测试服务控制台,在左侧导航栏中选择“测试资源”,单击“创建私有资源组”。 (可选)首次使用时,请根据提示信息,授权性能测试服务创建私有资源组。 进入创
正则表达式元字符 表1 元字符说明 元字符 说明 . 匹配除“\n”之外的任何单个字符,如果要匹配包括“\n”在内的任意字符,需使用诸如“[\s\S]”之类的模式。 ^ 匹配输入字符串的开始位置,不匹配任何字符,要匹配“^”字符本身,需使用“\^”。 $ 匹配输入字符串结尾的位置