jmeter对数据库进行简单的压测
1、点击测试计划,再点击“浏览”,把JDBC驱动添加进来:
注:JDBC驱动一般的位置在java的安装地址下,路径类似于: \java\jre\lib\ext
文件为:mysql-connector-java-5.1.39-bin.jar
没有这个文件的话,可以去网上下载,然后放到上面的路径下;也可以把驱动放到 jmter-bin 目录下。
2、添加一个线程组,命名为”连接mysql”,设置线程数、启动时间、循环次数:

3、右键点击“连接mysql”,再添加一个配置元件:JDBC Connection Configuration

配置该元件----JDBC Connection Configuration:注意 :select 1 s可以大写,但必须空格1,否则报错,还有查询的格式要正确
相关参数
select 1
# ? 后拼接的参数为 编码(增改会涉及到编码的问题) & 允许执行多条sql
jdbc:mysql://localhost:3306/test1907?characterEncoding=utf-8&allowMultiQueries=true
com.mysql.jdbc.Driver
root
root
除了test1907是数据库名,其他都是固定写法。

4、右键点击“连接mysql”,再添加一个采样器:JDBC request

配置该采样器:
Query Type选择
Query Type选择不当会报下面的错误:
Can not issue data manipulation statements with executeQuery().
(1)Select Statement------执行select语句,且只执行一条
(2)Update statement------执行insert、update、delete语句,且只执行一条(插入、修改、删除)
(3)callable Statement------sql语句有变量,以及多条 的时候选择
(4)prepared select statement ------ (欲状态通道) 执行select语句,执行多条。
(5)prepared update statement ------ (欲状态通道) 执行insert、update、delete语句,执行多条。
(6)commit ------ 提交
(7)rollback------回滚
(8)auto commit(F) ------ 自动提交,默认为false


select * from student where sno =108;
查询语句中的where条件可以使用 用户定义的变量 (或csv文件) 批量实现
select * from student where sno = ${sno};
欲状态通道的处理方法

当然,参数值可以使用常量,如108,也可以使用变量,如${sno1},
这就需要我们添加一个用户定义的变量


以上两张图之间的变量指针关系如下:
?------>${sno1}------>son1------>105
?------>${sno2}------>son2------>108
5、添加监听器,添加一个图形结果,一个查看结果树,一个聚合报告:

6、运行,并查看结果:



**********************************************************************
八JMeter对Oracle数据库进行压力测试
(6) 在Database Connection Configuration输入数据库配置信息
例如:Database URL: jdbc:oracle:thin:@192.168.1.168:1521:ptoracl
格式为:Database Url:连接postgresql的配置,格式:jdbc:postgresql://ip:port/dbname,如 jdbc:postgresql://10.21.11.11:5432/testdb
这个地方要注意一下,如果没有jar包或jar包的版本不对,会提示“could not load 'org.postgresql.Driver'”。
根据自己机器安装的jdk版本(如我的是1.8.1,下载JDBC4.2的版本),下载对应版本的jar包,如果下载版本不对,可能会出现上述错误。
十、mysql数据的配置:

十一,mysql 插入数据:


十二、mysql参数化:

十三:数据库驱动类和URL格式:列如mysql:jdbc:mysql://localhost:3306/jmeter ip加端口号和数据库
|
数据库 |
驾驶员等级 |
数据库URL |
|
MySQL |
com.mysql.jdbc.Driver |
jdbc:mysql://host:port/{dbname} |
|
PostgreSQL |
org.postgresql.Driver |
jdbc:postgresql:{dbname} |
|
Oracle |
oracle.jdbc.driver.OracleDriver |
jdbc:oracle:thin:@//host:port/service OR jdbc:oracle:thin:@(description=(address=(host={mc-name}) (protocol=tcp)(port={port-no}))(connect_data=(sid={sid}))) |
|
Ingres (2006) |
ingres.jdbc.IngresDriver |
jdbc:ingres://host:port/db[;attr=value] |
|
MSSQL |
com.microsoft.sqlserver.jdbc.SQLServerDriver 或者 net.sourceforge.jtds.jdbc.Driver |
jdbc:sqlserver://IP:port;databaseName=DBname 或者 jdbc:jtds:sqlserver://localhost:1433/"+"library" |
jmeter对数据库进行简单的压测的更多相关文章
- 软件性能测试分析与调优实践之路-JMeter对RPC服务的性能压测分析与调优-手稿节选
一.JMeter 如何通过自定义Sample来压测RPC服务 RPC(Remote Procedure Call)俗称远程过程调用,是常用的一种高效的服务调用方式,也是性能压测时经常遇到的一种服务调用 ...
- Jmeter 在linux下的分布式压测
Jmeter 在linux下的分布式压测 0.将 windows机器作为master 控制机(同时也兼做负载机slave), linux机器作为 负载机 slave. 1.linux环境安装 : (1 ...
- jmeter做简单的压测
一.JMeter概述jmeter除了可以做借口测试外,还可以做压力测试:首先介绍jmeter中各个组件在压力测试中扮演的角色 1)线程(Threads(Users))即虚拟用户,线程组里可设置需要模拟 ...
- jmeter简单的压测案例——访问百度并发5,持续请求15
好记性不如烂笔头,还是记记吧. jmeter压测的指标有很多,先从简单的入手,下一章节再讲解jmeter组件的作用. 需求是:访问百度的压测指标是:10s内并发5,持续15次请求.那么需要设置以下几点 ...
- 使用jmeter做简单的压测(检查点、负载设置、聚合报告)
1.添加断言(检查点) 在需要压测的接口下添加--断言--响应断言,取接口响应中包含有的数据即可 检查点HTTP请求-->断言-->响应断言1.名称.注释2.Apply to//作用于哪里 ...
- JMeter压力测试,http请求压测,5分钟让你学会如何压测接口!
JMeter压力测试 官网:https://jmeter.apache.org 最新款的jmeter需要java8的支持,所以请自行安装jdk8.这里就不啰嗦了. 可以根据自己的系统下载zip或者是t ...
- 【JMeter】JMeter完成一个java请求的压测
先定义一下我说的remoteService:即远程调用服务,没有http的url.不对外提供或者对外提供有限的服务.具体视各公司的代码架构所定,比如有些公司为web工程,scf服务,db.scf即为服 ...
- 【JMeter】(3)---MySQL压测
JMeter---MySQL压测 一.添加MySQL驱动jar包 在测试计划(Test Plan)页面添加jar包 二.添加MySQL连接配置 添加线程组右击-->添加(add)-->配置 ...
- 【JMeter】(2)---HTTP压测
JMeter---HTTP压测 一.创建线程组 右击-->添加-->Threads(Users)-->线程组 下面对比较重要的几个参数,讲解下: 名称: 就是给你这个线程组起名字. ...
随机推荐
- python+selenium 自动化测试框架-学习记录
本人小白一枚,想着把学习时的东西以博客的方式记录下来,文章中有不正确的地方请大佬多多指点!!共同学习 前期准备 安装python3.selenium.下载对应版本的webdriver:安装所需的第三 ...
- Mysql添加更新删除数据-表
例如 此处拥有一个表名为 uuser 为表添加新数据 ,'); ,'); ,'); 假如只想添加uid和uname ,'小张'); 那么pas自动填充为NULL. 为表更新数据 这里把小王的pas改成 ...
- mysql驱动包
mysql驱动包和源码下载地址:https://mvnrepository.com/artifact/mysql/mysql-connector-java 下载 mysql-connector-jav ...
- Less定义变量
1. 定义: 使用 @ 符号来定义变量 ,在Less中开头是 @ 则是变量,关于变量的命名方法,大家可以参考js中命名的规则,毕竟是做前端的,有着统一的习惯有助于我们统一风格.个人推荐变量名的命名规则 ...
- 对 getopts 的理解
getopts 格式 1 #!/bin/bash 2 echo "begin index is $OPTIND" 3 echo "begin ARG is $OPTARG ...
- Asp.net core logging 日志
1 基本概念 Dotnet core 一个重要的特征是 Dependency injection ,中文一般是依赖注入,可以简单理解为一个集合,在应用程序启动时,定义各种具体的实现类型并将其放到集合中 ...
- 看完这篇还不懂Redis的RDB持久化,你们来打我!
一.为什么需要持久化 redis里有10gb数据,突然停电或者意外宕机了,再启动的时候10gb都没了?!所以需要持久化,宕机后再通过持久化文件将数据恢复. 二.优缺点 1.rdb文件 rdb文件都是二 ...
- Bank2
Account: package banking2; //账户 public class Account { private double balance;// 账户余额 public Account ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - 定时任务最佳实战(二)
上一篇(https://www.cnblogs.com/meowv/p/12971041.html)使用HtmlAgilityPack抓取壁纸数据成功将图片存入数据库,本篇继续来完成一个全网各大平台的 ...
- Spring Cloud Stream微服务消息框架
简介 随着近些年微服务在国内的盛行,消息驱动被提到的越来越多.主要原因是系统被拆分成多个模块后,一个业务往往需要在多个服务间相互调用,不管是采用HTTP还是RPC都是同步的,不可避免快等慢的情况发生, ...