一、回顾
二、DDT数据驱动性能测试:jmeter + sqlite
1.csv\txt文件中的数据,怎么来的?
2.保存响应到本地的txt文件。
3.运行脚本,文件保存在jmeter的bin文件夹下。
4.如何用sqlite内存关系型数据库?
三、jdbc request
:创建表。
四、从mysql数据库中查询出数据,将查询到的数据写入sqlite数据库中。
五、从sqlite数据库中查询出所有的数据,将数据写入txt文件中。
jar包:丢在jmeter的lib文件夹中。
jdbc conection configuration
:连接池、URL
、driverclass
、 user
、password
。
不同的数据库,url
地址写法不一样:
mysql
:jdbc:mysql://serverip:port/dbname
。
不同的数据库的driver class
也是不一样。
mysql5
:com.mysql.jdbc.Driver
。
mysql8
:com.mysql.cj.jdbc.Driver
。
jmeter + sqlite
DDT数据驱动性能测试:csv\txt
文件。
手工造。
数据库导出。
是否可以用jmeter把数据库中的数据导出来。
性能测试环境的数据库中,已经有一批账号,我想把用户表中的账号导出。
使用jmeter导出数据库中的数据。
jdbc request:查询数据。
- SELECT id,mobile,gqid, token FROM cb_account
- where `password` = 'e10adc3949ba59abbe56e057f20f883e' AND LENGTH(mobile)=11
- LIMIT 100 OFFSET 1100
填写文件名称前缀。
勾选:Don't add number to prefix
。不要加数字前缀。
勾选:Don't add content type suffix
。不要加类型后缀。
现在遇到一个问题,就是反复执行,都是覆盖原来的文件,永远都只得到1份数据。没有把多次请求的数据合并,想要得到多次数据的合并的结果,还需要手工去弄。
用sqlite内存关系型数据库,不需要自己去安装(有图形界面的操作系统有浏览器,就默认已经安装了这个sqlite数据库了)。
sqlite的jar包,下载地址:https://mvnrepository.com/artifact/org.xerial/sqlite-jdbc/3.31.1
,放到jmeter的lib文件夹,重启jmeter。
Connection Configuration:
pool:自己定义个名称。
url:jdbc:sqlite:自定义一个dbfile文件名.db
class:org.sqlite.JDBC
。
user\password:不需要填写。
jdbc request
:创建表。query type:update statement
- create table if not exists 'kyj_user'(
- id TEXT,
- mobile TEXT,
- gqid TEXT,
- token TEXT
- )
脚本执行之后,发现在jmeter的bin文件夹下面有一个db文件。
mbs_#
=100offset 1100
:query type:select statement
offset 1200
,再次点击运行:offset 1300
https://gitee.com/qinghanstudy/gaojixingneng/tree/master/Advanced%20performance%20testing
文章中除标明“图片来自网络”的图片,皆为小编本人所画所截图,计算机知识都一样,如有雷同,纯属巧合。文章是清菡编写的,如有转载,请标明出处!
欢迎关注 “清菡软件测试”,进群加v:qhtester,备注:学校(公司名)+姓名(昵称),否则不予通过,感谢点赞与分享!