jmeter接口测试4-使用数据库mysql构造参数
jmeter测试中,测试数据一般和测试用例分离
测试数据一般可以使用csv构造,进行参数化
但也可以使用mysql等数据库构造
方案一:一个线程循环调用mysql数据,不是并发,不适用于性能测试,更适合接口测试
记录一下:
需求:如果sex是0,那么执行操作1
如果 sex是1,那么执行操作2
具体操作根据实际情况确定,这个例子用bash shell sample代替具体的操作
本地mysql数据库中我新建了 个database,取名jmeter,其中创建了user表
1.首先需要配置jmeter 的mysql源
添加JBDC connection Configuration
注意:
variablename for create pool:jetertest(jmetertest这个名字自己定义的,记住下面要使用)
max number of Conection JDBC连接池最大连接数
0:线程之间独立,不共享线程池
n :确保该值大于等于最大线程数
Database url:
jdbc:mysql://127.0.0.1:3306/YourDatabaseName?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true
2. 创建一个 JDBC request
3.在debug sample 可以看到结果sexarray
4. 循环遍历mysql返回的sexarray,使用循环控制器和计数器来实现
(1)循环控制器,设置最大的循环次数,在debug sample可以看到一共有4条数据,也就是sex_#=4
(2)计数器 因为循环数据的格式为sex_1,sex_2,sex_3,sex_4,这里使用计数器来构造下划线后面的1,2,3,4
sex_i
(3)使用函数助手来构造sex_i这种需要的格式sex_i
使用函数助手_v构造参数样式
构造格式sex_${i},点击生成,将截图3上的字符串拷贝到if判断语句
、
5 使用条件控制器if来判断执行的请求
sex=0执行请求0 sex=1执行请求1
添加个bash shell sample 或者实际中需要的http请求等
6 运行结果分析
因为数据库mysql sex分别为0,1,1,1
那么对应的beanshell取样器0,1,1,1
注意这里始终都是一个线程循环执行,不能算真正的并发
方案2:使用mysql数据库构造并发的参数化
这里使用
select sex from user where id =${id}
将${id}中的id进行参数化
select sex from user where id=1; select sex from user where id=2; select sex from user where id =3;select sex from user where id =4;
这样每次就可以循环取到每一个sex中的值,sex_1就是我们每次需要的值
下次在详细写
jmeter接口测试4-使用数据库mysql构造参数的更多相关文章
- Jmeter接口测试,往MySQL数据库写数据时,中文显示???
调Jmeter接口测试,请求字段输入中文,查看数据库插入情况, 发现数据库显示 ???
- Jmeter数据库mysql测试说明
主要分3个步骤,详细操作步骤如下: 一.环境准备 1.下载mysql驱动,下载地址:https://dev.mysql.com/downloads/connector/j/,Select Operat ...
- 转 14 jmeter性能测试实战--数据库MySQL
14 jmeter性能测试实战--数据库MySQL 需求 测试用户表(对用户表select操作) 测试步骤 1.MySQL驱动下载并安装. 2.测试计划面板点击"浏览"按钮,将 ...
- mysql优化———第二篇:数据库优化调整参数
摘要 参数调优内容: 1. 内存利用方面 2. 日志控制方面 3.文件IO分配,空间占用方面 4. 其它相关参数 一 摘要 通过参数提高MYSQL的性能.核心思想如下: 1 提高my ...
- 第三篇--Jmeter测试数据库Mysql
Jmeter模拟100用户访问Mysql数据库 1.将Mysql数据库的驱动[mysql-connector-java-5.1.15-bin.jar]放到jmeter的lib目录下,新建线程组100[ ...
- 【JMeter】JMeter进行简单的数据库(mysql)压力测试
JMeter进行简单的数据库(mysql)压力测试 1.点击测试计划,再点击“浏览”,把JDBC驱动添加进来: 注:JDBC驱动一般的位置在java的安装地址下,路径类似于: \java\jre ...
- MySql——查看数据库性能基本参数
使用show status可以查看数据库性能的参数,基本语法:show status like 'value'; 例如: show status like 'Connections';/*连接mysq ...
- 看MySQL的参数调优及数据库锁实践有这一篇足够了
史上最强MySQL参数调优及数据库锁实践 1. 应用优化 1.2 减少对MySQL的访问 1.2.1 避免对数据进行重复检索 1.2.2 增加cache层 1.3 负载均衡 1.3.1 利用MySQL ...
- shell编程系列23--shell操作数据库实战之mysql命令参数详解
shell编程系列23--shell操作数据库实战之mysql命令参数详解 mysql命令参数详解 -u 用户名 -p 用户密码 -h 服务器ip地址 -D 连接的数据库 -N 不输出列信息 -B 使 ...
随机推荐
- 如何在SpringMVC中使用REST风格的url
如何在SpringMVC中使用REST风格的url 1.url写法: get:/restUrl/{id} post:/restUrl delete:/restUrl/{id} put:/restUrl ...
- HDU1814(2-SAT)
Peaceful Commission Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- Codeforces339D(SummerTrainingDay06-A 线段树)
D. Xenia and Bit Operations time limit per test:2 seconds memory limit per test:256 megabytes input: ...
- MySQL常用操作汇编
熟悉 我熟悉xxx,其实很多原来熟悉到能背的,如果长时间不用了几乎也就忘了.此时再说自己熟悉XXX就被认为是在吹牛B了,感觉不是很好.所谓温故而知新,对于天资不聪颖的,就是要在一遍一遍的复习实践中慢慢 ...
- DataTable的数据或表结构复制
把datatable的结构全部数据或部分数据复制到一个新的datatabledatatable复制表结构:我们可以使用.clone()方法: DataTable oldDT = GetDataTabl ...
- HCTF2018 pwn题复现
相关文件位置 https://gitee.com/hac425/blog_data/tree/master/hctf2018 the_end 程序功能为,首先 打印出 libc 的地址, 然后可以允许 ...
- 浅谈文档协作在工程设计中的应用——共享excel计算书
我们设计过程中大量采用excel计算书,因为很多经典的计算都可以用excel解决,最最基本的就是工程量计算啦.稍微复杂的比如钢管计算,埋地钢管结构计算,顶管计算,水力学计算,波浪爬高计算,堤防高程计算 ...
- 从零自学Java-1.编写第一个Java程序
编写第一个Java程序 完成工作:1.在文本编辑器中输入一个Java程序. 2.使用括号组织程序. 3.保存.编译和运行程序. package com.Jsample;//将程序的包名称命名为com. ...
- Windows 自动更新服务恢复
之前手贱删除了Windows的自动更新服务,命令: SC DELETE Wuauserv 悲剧的是最近中了[永恒之蓝]病毒,很恼人!杀了毒,最后还是得仰仗Windows的补丁来加固系统.于是想通过SC ...
- HDFS ErasureCode方案对比
HDFS目前存储文件的方案是将一个文件切分成多个Block进行存储,通常一个Block 64MB或者128MB,每个Block有多个副本(replica),每个副本作为一个整体存储在一个DataNod ...