史上最全的 jmeter 获取 jdbc 数据使用的四种方法
jmeter使用jdbc协议获取数据库中数据,很多人都会用,因为大家在做测试的时候,有时候需要大量的用户进行登录,获取需要数据库中真实的数据用于测试,所以常常会用jdbc来获取数据库数据。
那从数据库获取回来的数据,一般会用什么方式来接收呢?
常见的有两种:Variable names 和 Result variable name。
相信,大家肯定用的最多的就是第一种Variable names,因为这种,使用Foreach控制器使用最简单。
但是,其他的你懂得如何使用吗?
那今天,我就在这里,把Variable names 和 Result variable name 这两种接收变量,并循环使用的办法做了一个汇总,给大家讲解一下。
我们先看用 Variable names 接收数据库返回值的情况:

Variable names为dbmobile,来接收从数据库查询返回回来的100个用户号码,我们可以看下,从数据库中返回回来的数据,是如何被变量接收的。

方法一: 使用foreach控制器,循环的使用这100个手机号,进行登录

看到上图, 输入变量前缀,输入的是Variable names的变量名称;
然后开始循环和介绍循环值(上面图中我其实只用98个值,不是100个值);
再看输入变量名称,我自定义了一个变量;再勾选了数字之前加下划线。

这个图,我们就看到,登录接口中,使用了上面自定义的变量名称

方法二:使用循环控制

循环控制器,我们填写循环次数

接下来,我们就要添加计数器,计数器每次计算一次,增加1,定义一个新变量 f 来接收计数器的值。

然后,我们在登录接口中,我们使用一个 关联函数 ${__V(dbmobile_${f})}

接下来我们再看用Result variable name 接收数据库返回值的情况:

Result variable name为dbmobo,来接收从数据库查询返回回来的100个用户号码,我们可以看下,这个时候,从数据库返回回来的数怎么接收的。

方法三: 使用foreach控制器

此时,在使用foreach控制器之前,我们先要用一个正则提取器,把我们想要的用户号码提取出来。我们也来看下,提取之后的值。

看到上图,提取之后的值,是不是似曾相识,接下来用foreach控制器,是不是就很简单了。


方法四:使用循环控制

循环控制器的配置和计数器的配置,相信大家也都已经知道了,没有难度了。难点,就在下面。

看清楚这个用户参数的设置了吗?
${__BeanShell(vars.getObject("dbmobo").get(${d}).get("mobile"))}这段能理解吗?
从dbmobo这个对象中,获取第 d 个mobile的值。d是上面的计数器输出值,每次递增1

理解了上面的用户参数的值用法,这个登录接口,就么有难度了吧。看最后运行结果,是不是也可以循环登录了呢?

好了,这四种用法你是否都掌握了呢?相信很多朋友都只会其中1到2种用法吧。之前没有用过,那就好好动手学习起来吧!
史上最全的 jmeter 获取 jdbc 数据使用的四种方法的更多相关文章
- 史上最全的 jmeter 获取 jdbc 数据使用的4种方法——(软件测试Python自动化)
周五,下班了吗?软件测试人. 明天是周末了!给大家推荐一个技术干货好文.史上最全的 jmeter 获取 jdbc 数据使用的四种方法.我也精剪了jmeter的自动化接口测试的视频放在了同名UP主,周末 ...
- JAVA中获取文件MD5值的四种方法
JAVA中获取文件MD5值的四种方法其实都很类似,因为核心都是通过JAVA自带的MessageDigest类来实现.获取文件MD5值主要分为三个步骤,第一步获取文件的byte信息,第二步通过Messa ...
- MYSQL获取自增ID的四种方法
MYSQL获取自增ID的四种方法 1. select max(id) from tablename 2.SELECT LAST_INSERT_ID() 函数 LAST_INSERT_ID 是与tabl ...
- YSQL获取自增ID的四种方法(转发)
YSQL获取自增ID的四种方法(转发) 1. select max(id) from tablename 2.SELECT LAST_INSERT_ID() 函数 LAST_INSERT_ID 是与t ...
- DBS-MySQL:MYSQL获取自增ID的四种方法
ylbtech-DBS-MySQL:MYSQL获取自增ID的四种方法 1.返回顶部 1. 1. select max(id) from tablename 2.SELECT LAST_INSERT_I ...
- JavaSE-反射-获取类或者对象的四种方法
1.使用Class类的静态方法Class.forName("xxxx"); 新建一个要想要获取的类 package org.burning.sport.javase.classlo ...
- JMeter 使用 http长连接 |史上最全
疯狂创客圈 Java 高并发[ 亿级流量聊天室实战]实战系列 [博客园总入口 ] 疯狂创客圈(笔者尼恩创建的高并发研习社群)Springcloud 高并发系列文章,将为大家介绍三个版本的 高并发秒杀: ...
- 史上最全阿里 Java 面试题总结
以下为大家整理了阿里巴巴史上最全的 Java 面试题,涉及大量 Java 面试知识点和相关试题. JAVA基础 JAVA中的几种基本数据类型是什么,各自占用多少字节. String类能被继承吗,为什么 ...
- 史上最全 69 道 Spring 面试题和答案
史上最全 69 道 Spring 面试题和答案 目录Spring 概述依赖注入Spring beansSpring注解Spring数据访问Spring面向切面编程(AOP)Spring MVC Spr ...
随机推荐
- Android学习笔记.9.png格式图片
.9.png可以保证图片在合适的位置进行局部拉伸,避免了图片全局缩放造成的图片变形问题.AS提供了制作点9图片的便捷入口,并且会检查你的.9图是否有不合理的拉伸区域. 选中图片点击create 9-p ...
- [ C++ ] 勿在浮沙筑高台 —— 内存管理(18~31p) std::alloc
部分内容个人感觉不是特别重要,所以没有记录了.其实还是懒 embedded pointers 把对象的前四字节当指针用. struct obj{ struct obj *free_list_link; ...
- 工业4.0:换热站最酷设计—— Web SCADA 工业组态软件界面
前言 随着工业4.0的不断普及与发展,以及国民经济的飞速前进,我国的城市集中供热规模也不断扩大,科学的管理热力管网具有非常重大的经济和社会效益.目前热力系统,如换热站大都采用人工监控,人工监控不仅浪费 ...
- 重学 Java 设计模式:实战迭代器模式「模拟公司组织架构树结构关系,深度迭代遍历人员信息输出场景」
作者:小傅哥 博客:https://bugstack.cn - 原创系列专题文章 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 相信相信的力量! 从懵懂的少年,到拿起键盘,可以写一个Hell ...
- 如何用Tesseract做日文OCR(c#实现)
首先做一下背景介绍,Tesseract是一个开源的OCR组件,主要针对的是打印体的文字识别,对手写的文字识别能力较差,支持多国语言(中文.英文.日文.韩文等).是开源世界里最强的一款OCR组件.当然和 ...
- GDI+ 双缓冲实现
早前曾为此问题在CSDN发帖求助(GDI+ 如何使用双缓冲绘制图像),得到了一个GDI+下较可行的方法,虽然绘制效果比直接绘制要好一些,不过还不能跟GDI的双缓冲方式比肩. 现在,我终于找到了一个 ...
- hive命令查询数据不显示表头解决办法
在hive命令行中查询数据如下: 表头未显示出来 解决办法: 修改hive安装包conf/hive-site.xml配置文件: <property> <name>hive.cl ...
- 'printf' Function
printf is not part of the C language; there is no input or output defined in C itself. printf is jus ...
- Kubernetes实战总结 - Ingress选型与应用
一.概述 Ingress 是对集群中服务的外部访问进行管理的 API 对象,可以提供负载均衡.SSL 终结和基于名称的虚拟托管. 典型的访问方式是 HTTP,用于将不同URL的访问请求转发到后端不同的 ...
- html5中contenteditable属性如果过滤标签,过滤富文本样式
在div中使用contenteditable=”true”可以达到模拟输入框的效果,但是当我们复制其他网页内容进去的时候,会发现连带的样式也一起复制进去了.很明显我们不需要复制富文本样式,那么如何 ...