通过案例教你玩转Jmeter(下)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 通过案例教你玩转Jmeter(下)

1.3.3通过MySQL参数化

1,mysql-connector-java-5.1.7-bin.jar放入%JMeter_HOME%\lib\ext\。然后重新启动JMeter。

2,Config Elements-> JDBCConnection Configuration

image.png


其中:

  • Search:为连接JDBC Request的参数;
  • jdbc:mysql://localhost:3306/sec中3306为mysql的端口号,sec为访问的数据库名。
  • root为登录名
  • 123456为密码,不明文显示。


3,Sample->JDBC Request

image.pngimage.png


  • Search必须与JDBCConnection Configuration一致
  • name,password为查询参数的名称,通过Debug Sample可以看见:


name_#=5
name_1=cindy
name_2=linda
name_3=jerry
name_4=susan
name_5=peter
password_#=5
password_1=123456
password_2=knyzh158
password_3=654321
password_4=qwert
password_5=zxcvb


result为结果集,通过DebugSample可以看见:


result=[{name=cindy, password=123456}, {name=linda,password=knyzh158}, {name=jerry, password=654321}, {name=susan,password=qwert}, {name=peter, password=zxcvb}]


4,下面我们通过result来提取用户名和密码。

建立正则表达提取器

image.png

  • 从变量result中获取。
  • 获取完毕存入变量parm中。
  • 正则表达提取式为:{name=(.*?),password=(.*?)}。
  • 由于有两个变量,所以Template为:$1$$2$。
  • 随机取数,Match No.输入:0


5,在POST请求中修改参数。

image.png

username、password分别为${parm_g1}、${parm_g2}。


6,运行

image.png

到此位置接口设置的部分结束,开始与性能相关的部分。


1.5 性能相关的设置

1. 设置线程组

image.png


  • 50个在线用户,在5秒内加载完毕。测试持续600秒(10分钟),启动后5秒后开始执行。


2.设置无限循环

image.png


3. 在登录请求后加入同步集合点:Timer->Synchronizing Timer。

image.png


  • 并发用户为5
  • 4秒后,如果达不到并发条件,立即执行。


4. 同样在“查询商品”“查看商品详情”也加入同步集合点。


1.6 设置报表

1.6.1 Summary Report

Listener->Summary Report

image.png


1.6.2 Aggregate Report

Listener->Aggregate Report

image.png


1.6.3 Aggregate Graph

Listener->Aggregate Graph

image.png

Aggregate Graph比Aggregate Report多了个图显示


1.6.4 Response Time Graph

Listener->Response Time Graph

image.png


1.6.5 Graph Results

Listener->Graph Results

image.png


强烈要求在测试执行的时候不要打开报表,用命令行执行,然后产生执行报告后导入JMeter。


1.6 整体运行

1.6.1 仅运行登录

将“查询商品”“查看商品详情”吞吐量控制器设置为0%

查看Summary Repoer,仅有“登录页面”和“商品列表页面”

image.png


1.6.2 仅运行查询商品

“登录”并发设置为0

“查看商品详情”吞吐量控制器设置为0%。


1.6.3 仅运行查看商品详情

“登录”并发设置为0

“查询商品”吞吐量控制器设置为0%。


1.6.4 多场景运行

“查询商品”吞吐量控制器设置为80%。

“查看商品详情”吞吐量控制器设置为20%。


2 使用Http Put请求

1,打开Tomcat put请求,%TOMCAR_HONE%/conf/web.xml


<servlet>
         <servlet-name>default</servlet-name>
         <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
        <init-param>
             <param-name>debug</param-name>
             <param-value>0</param-value>
        </init-param>
              <init-param>
         <param-name>readonly</param-name>
         <param-value>false</param-value>
         </init-param>
        <init-param>
            <param-name>listings</param-name>
             <param-value>false</param-value>
        </init-param>
         <load-on-startup>1</load-on-startup>
    </servlet>


2,启动WEB服务器


3,启动JMeter。Sample->Httprequest


4,运行,查看结果树。

Listener->View Result Tree

Sample->Debug Sample

image.png


3 上传多个文件

1,config Element->CSV Data SetConfig

image.png


2,修改Http request

image.png


3,增加循环次数

image.png


4,运行,查看服务器端

image.png

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
Java 测试技术 API
通过案例带你轻松玩转JMeter连载(49)
通过案例带你轻松玩转JMeter连载(49)
251 1
通过案例带你轻松玩转JMeter连载(49)
|
存储 Linux
通过案例带你轻松玩转JMeter连载(60)
通过案例带你轻松玩转JMeter连载(60)
179 0
通过案例带你轻松玩转JMeter连载(60)
|
算法
通过案例带你轻松玩转JMeter连载(59)
通过案例带你轻松玩转JMeter连载(59)
232 0
通过案例带你轻松玩转JMeter连载(59)
|
XML JavaScript Java
通过案例带你轻松玩转JMeter连载(58)
通过案例带你轻松玩转JMeter连载(58)
130 0
通过案例带你轻松玩转JMeter连载(58)
通过案例带你轻松玩转JMeter连载(57)
通过案例带你轻松玩转JMeter连载(57)
128 0
通过案例带你轻松玩转JMeter连载(57)
|
存储 索引
通过案例带你轻松玩转JMeter连载(56)
通过案例带你轻松玩转JMeter连载(56)
117 0
通过案例带你轻松玩转JMeter连载(56)
|
存储 Prometheus 监控
通过案例带你轻松玩转JMeter连载(55)
通过案例带你轻松玩转JMeter连载(55)
165 0
通过案例带你轻松玩转JMeter连载(55)
|
存储 监控 数据可视化
通过案例带你轻松玩转JMeter连载(54)
通过案例带你轻松玩转JMeter连载(54)
157 0
通过案例带你轻松玩转JMeter连载(54)
|
存储 Prometheus 监控
通过案例带你轻松玩转JMeter连载(53)
通过案例带你轻松玩转JMeter连载(53)
138 0
通过案例带你轻松玩转JMeter连载(53)
|
JSON 监控 数据可视化
通过案例带你轻松玩转JMeter连载(52)
通过案例带你轻松玩转JMeter连载(52)
200 0
通过案例带你轻松玩转JMeter连载(52)