jmeter】怎么用jmeter从数据库中获取数据

2021-04-20 18:34发布

5条回答
羊羊羊羊
2楼 · 2021-04-21 15:47

首先第一步要导入mysql驱动包

一、添加JDBC Connection Configuration

设置链接

Database URL: jdbc:mysql:// 数据库地址 /库名

JDBC Driver class:com.mysql.jdbc.Driver

Username:账号

Password:密码

二、添加JDBC Reques

三、在http请求中加入变量

username_id_N:N为数字,指取第几个数

四:添加察看结果树

五:添加循环控制器

六:目标接口放入到循环控制器下,另外添加一个计数器,因为我们取的值是根据${username_N}来取的,那么这个N可以通过计数器递增的方式获得



aijingda
3楼 · 2021-04-21 18:07

JMeter连接MySQL数据库

首先得下载mysql jdbc驱动包 mysql-connector-java.jar (注:驱动包的版本一定要与你数据库的版本匹配,驱动版本低于MySQL版本有可能会导致连接失败报错)。把该jar放置于 [JMeter安装目录]/lib 下

JMeter连接MySQL数据库

也可以在 测试计划 中,通过 Add directory or jar to classpath 添加 mysql jdbc 驱动包

JMeter连接MySQL数据库

ban_gank
4楼 · 2021-04-22 10:24

首先第一步要导入mysql驱动包

 

 

一、添加JDBC Connection Configuration

设置链接

Database URL: jdbc:mysql:// 数据库地址 /库名

JDBC Driver class:com.mysql.jdbc.Driver

Username:账号

Password:密码

二、添加JDBC Request

ariable Name: 数据库连接池的名字,需要与上面配置的JDBC Connection Configuration中Variable Name Bound Pool的Variable Name相同 

Query:填写的sql语句未尾不要加“;” 

Parameter valus:参数值 

Parameter types:参数类型,可参考:Javadoc for java.sql.Types 

Variable names:保存sql语句返回结果的变量名 

Result variable name:创建一个对象变量,保存所有返回的结果 

Query timeout:查询超时时间 

Handle result set:定义如何处理由callable statements语句返回的结果

 

variables names设置为A,,C,那么如下变量会被设置为:

  A_#=2 (总行数)
  A_1=第1列, 第1行
  A_2=第1列, 第2行 
  C_#=2 (总行数) 
  C_1=第3列, 第1行
  C_2=第3列, 第2行

    • 如果返回结果为0,那么A_#和C_#会被设置为0,其它变量不会设置值。

    • 如果第一次返回6行数据,第二次只返回3行数据,那么第一次那多的3行数据变量会被清除。

    • 可以使用${A_#}、${A_1}...来获取相应的值

 

 

三、在http请求中加入变量

username_id_N:N为数字,指取第几个数

四:添加察看结果树

 

结束。。。。。。

 

-------------这里是分界线-------------

 

其实并没有。。。。

 

实际中,我们是取出多个值,循环传入数据库

五:添加循环控制器:

 

 

 六:目标接口放入到循环控制器下,另外添加一个计数器,因为我们取的值是根据${username_N}来取的,那么这个N可以通过计数器递增的方式获得

 

七:计数器:

 

八:通过函数助手获取嵌套函数

函数__V可以用于执行变量名表达式,并返回执行结果。它可以被用于执行嵌套函数引用(目前JMeter不支持)。

例如,如果存在变量A1、A2和N=1,则:

${A1}:能正常工作。

${A${N}}:无法正常工作(嵌套变量引用)。

${__V(A${N})}:可以正常工作。A${N}变为A1,函数 __V返回变量值A1。

 

九:运用在目标接口中

 

 运行就OK啦


大冬瓜
5楼 · 2021-04-23 14:59

1、测试计划中添加Mysql Jar包

2、添加线程组

3、添加 jdbc connection configuration

4、添加JDBC Request,从数据库中获取数据

注意:1.Variable Name必须与第3步中的Variable Name保持一致。

2.Result variable name 结果集名称,将查询出的数据保存在account变量中,后面BeanShell PostProcessor中会使用account变量

5、添加 BeanShell PostProcessor,用于读取和保存从数据库中获取的变量

5、添加HTTP请求

注意:${username},${password}需与 BeanShell PostProcessor中定义的变量名保持一致

6、察看结果树



py大白
6楼 · 2021-04-26 09:48

首先第一步要导入mysql驱动包

一、添加JDBC Connection Configuration

设置链接

Database URL: jdbc:mysql:// 数据库地址 /库名

JDBC Driver class:com.mysql.jdbc.Driver

Username:账号

Password:密码

二、添加JDBC Reques

三、在http请求中加入变量

username_id_N:N为数字,指取第几个数

四:添加察看结果树

五:添加循环控制器

六:目标接口放入到循环控制器下,另外添加一个计数器,因为我们取的值是根据${username_N}来取的,那么这个N可以通过计数器递增的方式获得


相关问题推荐

  • 回答 3

    做梯度压力测试,当你发现响应时间下降超过10%的那个压力点,基本上就是性能瓶颈点了。当然还可以直接压崩。然后给一个极值。但是通常这个值 没用。

  • 回答 2

    主要从架构上登录过程的实现,能否支持同一账号多处登录,是架构考量的,一般的系统除非对session做持久化和帐号绑定。否则肯定同一账号多个会话是支持的。更多详细还要看你的架构实现。不过一点可以确认从数据库和中间件缓存来看,命中一定会比不同数据要高...

  • 回答 4

    、修改jmeter.properties文件,打开一些输出内容开关(下图根据需要选择相关项,具体就不用多说了吧)2、制定一份自己的输出模板。(不用默认的jmeter_home/extras/jmeter-results-detail-report.xsl模板,也可以网上自己找份。)3、最后执行,生成对应的HTML...

  • 回答 3

    一、Jmeter关联的方式:Jmeter中关联可以在需要获取数据的请求上 右键–>后置处理器 选择需要的关联方式,如下图有很多种方法可以提取动态变化数据:  在LR中有自动关联跟手动关联,但在我看来手动关联更准确,在jmeter中,就只有手动关联为什么要进行关联:...

  • 回答 4

    1) 配置元件(config elements):http请求默认值、http信息头管理器、CSV Data Set Config  2) 前置处理程序(Pre-processors):用户参数  3) 定时器(timers):同步定时器和常量吞吐定时器  4) 取样器(Sampler):http请求、JDBC Request、FTP请求....  5) ...

  • 回答 3

    再今天重新学习,从数据库中取数据,并作为变量传到下一个请求中。首先第一步要导入mysql驱动包  一、添加JDBC Connection Configuration设置链接Database URL: jdbc:mysql:// 数据库地址 /库名JDBC Driver class:com.mysql.jdbc.DriverUsername:账号Pass...

  • 回答 5

    一、CSV 参数化1、我们做性能测试需要并发多个用户,为了真实模拟用户行为,我们需要模拟多个不同的用户登录,这是我们就需要进行参数化。这里我们选择比较常用的参数化方法-CSV Data Set Config首先打开CSV Data Set Config2.新建cvs文件放在和脚本同一个目...

  • 回答 8
    已采纳

    jmeter有哪些优、缺点

  • 回答 5

    一、测试计划:用来描述一个性能测试,所有内容都是基于这个计划的。二、线程:一般常用线程组:可以理解成为虚拟用户组    setup thread group:可用于执行预测试操作。这些线程的行为完全像一个正常的线程组元件。类似Loadrunner中的init    teardown...

  • 回答 2

    在使用Jmeter进行性能测试时,需要并发多个用户,模拟真实用户行为,此时就需要模拟多个不同用户同时请求,每个用户请求中的imei或uuid动态变化。Jmeter提供了参数化的功能,配置元件、函数助手以及前置处理器中的用户参数,均能够帮助我们解决这个问题。配置...

  • 回答 1

    可以在beanshell中把结果写到一个文件中自行统计。

  • 回答 1

    参数设置的不一样吧

  • 回答 1

    做了参数化,更能模仿不同的用户行为,如果不做参数化,所有的请求参数都是一成不变的,那么容易造成服务器的过度缓存,导致压测性能很好,真正上线就挂~~~

  • 回答 2

    正则表达式中设置相关参数值;引用名称:其他接口引用时候的名称正则表达式:(.*)表示零次或多次匹配除换行符之外的单字符,截图里提取的是响应数据中和之前的值

  • 回答 6
    已采纳

    转载:https://blog.csdn.net/weixin_33770878/article/details/87563654Jmeter与loadrunner是现时下比较火的两个软件,很多的测试人员在面临loadrunner与Jmeter的时候不知道该如何选择,其实当了解这两款软件之后就不会发生这种选择困难症了。下面通过一些异...

没有解决我的问题,去提问