Jmeter上手拙计
1 适用场景
测试jdbc连接Gauss 数据库
测试并发性能
2 Windows 安装
2.1 将jmter.zip包解压到本地安装目录(任意位置)
2.2 将jdbc驱动解压到\apache-jmeter-5.0\lib
2.3 cmd 检查是否已安装jdk
java –version
2.4 添加数据库访问白名单
连接CN节点,添加数据库测试用户
su - omm
!source
gsql -d postgres -p 25308 –r
create user jmtest password '********';
alter user jmtest sysadmin;
gs_guc set -Z coordinator -N all -I all -h "host all jmtest 0.0.0.0/0 sha256"
3 配置jmeter文件
3.1 启动jmeter添加线程组
3.2 导入jdbc驱动jar包
3.3 创建进程组
参数说明: · Number of Threads:模拟的用户数 · Ramp-Up Period(in seconds): 启动所有线程所需的时间 · Loop count:执行测试用例的次数。 或者,可以选择“永远”,使测试运行直到手动停止 · Duration:执行测试用例的时间。在这个时间内,一个线程请求返回后,会再次向数据库发起请求。 |
3.4 添加JDBC Connection Configuration
在’Thread Group’上鼠标点击右键-> add->Config Element->JDBC Connection Configuration
参数说明: · Variable Name for created pool:连接所绑定的变量名称。 · Max Number of Connections: 连接池中允许的最大连接数。在大多数情况下将其设置为0.这意味着每个线程将获得自己的连接池,其中包含单个连接。 · Max Wait:如果在尝试连接的过程中超过超时时间,则会返回连接错误。 · Time Between Eviction Runs:在空闲对象逐出器线程的运行之间休眠的毫秒数。当非正数时,将不运行空闲对象逐出器线程。 · Auto Commit:自动连接开关。 · Test While Ldle:测试连接池的空闲连接,使用‘Validationi Query’ 验证。 · Soft Min Evictable Ldle Times:空闲连接在被空闲对象驱逐器清除之前的最短时间。 · Validation Query: 用于确定数据库是否仍在响应的简单查询。 · Database URL:JDBC连接串。 · JDBC Driver Class:驱动名称(jar包放在jmeter lib目录下)。 · Username:访问的数据库的用户名。 · Password:访问的数据库的密码。 |
3.5 添加采样器JDBC Rquest
在’Thread Group’上鼠标点击右键->add->Sampler->JDBC Request
添加测试sql,JDBC Connection Configuration 与前面配置的信息保持一致
添加结果监测
点击执行,查看连接是否成功
此采样器允许您将JDBC请求(SQL查询)发送到数据库
参数说明: · Variable Name of pool:连接池绑定的JMeter变量的名称。这必须与’ JDBC Connection Configuration’的’Variable Name for created pool’字段一致。 · Query Type: 根据语句类型设置。 |
3.6 添加配置元素CSV Data Set Config(非动态sql不传参数无需配置)
配置元素可用于设置默认值和变量,供以后采样器使用。 注意,这些元素在它们被发现的范围的开始处被处理,即在相同范围内的任何采样器之前。
参数说明: · FileName:要读取的文件的名称。 · File encoding:用于读取文件的编码 · Variable Names: 变量名称。 其他参数默认就好 |
4 在命令行启动压力测试
4.1 启动测试
启动cmd进入jmeter.bat所在目录执行如下命令测试
jmeter –n –t D:\apache-jmeter-5.0\test\JDBC_Request.jmx –l D:\apache-jmeter-5.0\log\dbtest.log –e –o D:\apache-jmeter-5.0\report |
参数说明: -n :以非GUI形式运行Jmeter
|
4.2 测试报告
测试完成后,在D:\apache-jmeter-5.0\report目录下,点击index.html查看测试结果。
5 Linux中运行jmeter
5.1 查看是否已安装jdk,执行命令:java -version,如已安装执行5.3安装jmeter。
5.2 在Linux服务器先安装jdk
1、先从客户端下载jdk1.8.0_144.tar.gz,再上传到服务器
2、解压:tar -xzf jdk1.8.0_144.tar.gz,生成文件夹 jdk1.8.0_144
3、在/usr/local目录下创建java文件夹,再将 jdk1.8.0_144目录移动到/usr/local/java中
1)cd /usr/local
2) mkdir java
3)mv jdk1.8.0_144 /usr/local/java
3、配置java环境变量
1)vi /etc/profile
2)在最后面增加两行
export JAVA_HOME=/usr/local/java/jdk1.8.0_144
export PATH=$JAVA_HOME/bin:$PATH
重启虚拟机后配置才会生效
3)执行命令:source /etc/profile,无需重启,配置的环境变量立马生效
或者执行以下命令(必须是root角色,普通角色没有权限)
# export JAVA_HOME=/usr/local/java/jdk1.8.0_144
# export PATH=$JAVA_HOME/bin:$PATH
5.3 安装Jmeter
1、将本地的Jmeter文件打包成zip文件:apache-jmeter-5.0_json.zip,再上传到服务器
2、在服务器解压缩,生成jmeter-5.0目录
解压缩:unzip apache-jmeter-5.0_json.zip
3、将jmeter-5.0目录 放到 /usr/local下
4、配置Jmeter环境变量。vi /root/.profile,再添加如下变量
export JMETER_HOME=/usr/local/jmeter-5.0
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH
export PATH=$JMETER_HOME/bin:$PATH
5、source /root/.profile (让配置文件立马生效)
6、给jmeter添加可执行权限
chmod +x $JMETER_HOME/bin/ jmeter
7、查看是否安装成功,执行命令:jmeter -v
5.4 接口测试
1、将本地生成的jmx文件上传到服务器
2、输入命令: jmeter -n -t /home/jessica/httpThread.jmx -l log.jtl,查看结果
参数说明:
-n:以NoGUI方式运行脚本
-t:后面接脚本名称
-l:后面接日志名称,保存运行结果
3、查看log.jtl,返回200,说明运行成功(可以将log.jtl发送到windows下查看:添加聚合报告,在聚合报告中打开该文件)
4、注意:客户端和服务器的Jmeter版本最好保持一致,不然运行脚本时会报如下错误
- 点赞
- 收藏
- 关注作者
评论(0)