JMeter测试工程原生性能压测

JMeter测试工程原生性能压测

方案概述

操作流程

实施步骤

方案概述

应用场景

用户在使用本地JMeter进行压测时,为应对不同的压测需求,需要安装各种插件。为了方便查看可视化的测试报告,可以在PerfTest中引入JMeter测试工程。PerfTest-JMeter测试工程旨在为用户提供JMeter原生引擎的支持,用户可在PerfTest-JMeter测试工程里导入JMeter脚本,使用JMeter原生引擎快速发起高并发的性能测试,且可查看完备的性能测试报告。

方案架构

PerfTest-JMeter测试工程,通过集成开源Apache-JMeter实现压力测试,具体工作原理如下:

1、用户通过PerfTest测试资源,将自己租户下的CCE节点,纳管到PerfTest服务,作为调试节点(一个)和执行节点(至少一个才能发起任务)使用。纳管后,PerfTest服务会创建一个VPC终端节点,用于上传测试数据到PerfTest服务。PerfTest服务通过CCE拉起常驻的调试负载,负载拉起一个容器(即PerfTest容器),用于调试。

说明:首次使用PerfTest测试资源,需要用户对PerfTest服务进行授权,允许PerfTest服务操作CCE和VPC终端节点。

2、用户使用PerfTest-JMeter测试工程时,需要上传jmx脚本到PerfTest服务。这些脚本会存储在PerfTest服务的OBS中。PerfTest服务拉起容器后,PerfTest容器会通过OBS下载并执行用户的脚本。

说明:用户在界面上删除jmx脚本时,PerfTest服务的OBS中的脚本也会被删除。

3、用户执行任务时,通过CCE拉起临时的执行负载。负载根据任务规模拉起一个或多个PerfTest容器,用于执行任务。当采用多个容器执行任务时,线程组中的线程数会平分给每个PerfTest容器。

4、PerfTest服务执行任务过程中,PerfTest容器会通过VPC终端节点将测试的结果数据上传到PerfTest服务,用于:

统计任务的并发数、时延、RPS、带宽、TP90等性能指标。

显示执行时产生的请求日志、返回日志。

5、任务结束时,PerfTest容器会被销毁,只有执行记录会留在用户的执行机中。

说明:PerfTest容器集成了开源Apache-JMeter、PerfTest的控制代码以及PerfTest的部分JMeter增强能力(如多阶段压力配置、日志输出等)。

PerfTest-JMeter工程,默认集成Apache-JMeter 5.4引擎(当前版本),可以通过在PerfTest测试资源上传自定义安装包,更改为Apache-JMeter 5.3或5.2版本。自定义安装包是从Apache官网下载的zip包。

如果希望PerfTest-JMeter工程能够支持部分第三方插件,可以在PerfTest-JMeter工程处以“第三方jar”的形式,将第三方插件上传。这等效于将jar包放置在JMeter根目录“\lib\ext”下。

操作流程

1、编写本地JMeter脚本,保存为jmx文件。

2、准备测试资源,创建私有资源组。

3、创建JMeter测试工程。

4、导入本地jmx文件。

5、编辑线程组,可根据业务需求设置线程组的部分参数。

6、调试测试任务,通过调试快速发现语法或配置错误,确保该模型在任务中可用。

7、执行测试任务,通过测试获取并分析系统运行的性能数据。

8、查看测试报告,JMeter测试报告提供实时、离线两种类型的测试报告,供用户随时查看和分析测试数据。

实施步骤

前提条件

已在本地安装JMeter客户端。

实施有两种步骤,第一:本地编写JMeter脚本,第二:使用JMeter原生压测,具体步骤参考以下链接

本地编写JMeter脚本

使用JMeter原生压测

性能测试 CodeArts PerfTest相关视频

性能测试

05:59

性能测试

性能测试

03:08

性能测试

1对1咨询专属顾问

1对1免费咨询华为云专属顾问,为您量身定制产品推荐方案
立即咨询

华为云咨询电话:950808或4000-955-988 转1

华为云咨询电话:950808或4000-955-988 转1

华为云专业的服务团队,致力于为您提供专业的售前购买咨询服务,及完善的售后技术服务,助您云上无忧