数据测试002:利用Jmeter推送测试数据(上)
刚才用Jmeter配置一下MySQL数据库花了点时间,好在最后都解决了,注意下面几个问题:
1)没有配置 “Cannot load JDBC driver class 'com.mysql.jdbc.Driver”的问题;
这个比较好解决,针对自己Mysql的版本下一个mysql/mysql-connector-java.jar文件,这里有个链接比较好容易找到“https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.11/”
2)Jmeter配置的几个对应;
a)对应问题
b)Mysql的配置
在url的地方遇到点麻烦,是中文乱码输入问题,有个帖子直接解决了(原地址:https://www.cnblogs.com/EasonJim/p/6906713.html)
我默认直接写上全部完整的jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
c)这几类的函数基本覆盖了测试所需变量的替换,主要问题是如果一个字段是主键,随机函数会避不可免的生成一样的数据,所以会报错,尽量将主键部分按多种组合生成;
下面有这几类函数的使用。
3)谈谈Jmeter函数助手几个常用函数的用法
通过函数助手可以很方便的利用
a)、__Random函数
使用方法如下:
${__Random(1,100,字段名)} ,输入最小值和最大值,任意定义个字段名,系统会随机在1-100中产生一个数值在body中使用:"字段名":"${__Random(1,100,字段名)}",字段名必须跟前面保持一致,如下图中随机产生的:66,也可以直接"${__Random(1,100)}"作为参数使用。
b)、__RandomString
使用方法如下 :${__RandomString(8,abc12345,字段名)},定义字符长度为8,设定字符组成的字符abc12345,系统会随机在abc12345中产生一个字符值在body中使用:"kkbh":"${__RandomString(8,abc12345,kkbh)}",字段名必须跟前面保持一致,如下图中随机产生的:5b42a54c,也可以"${__RandomString(8,abc12345)}"直接使用。
c)、__RandomFromMultipleVars
使用方法如下:1)首先要创建用户定义的变量,如下图
2)创建函数 ${__RandomFromMultipleVars(name1|name2|name3,name)},函数中几个变量名用‘|’隔开
3)在body中使用:"name":"${__RandomFromMultipleVars(name1|name2|name3,name)}"
d)__RandomDate 随机生成日期函数
第一个是格式,默认是yyyy-MM-dd,也可以自己定义;后面的两个是开始时间和结束时间,注意格式要统一,最后生成一个日期值。
也可以直接当参数使用${__RandomDate(1990-01-01,2019-12-31)}
3)最后的结果看看我生成的