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 数据使用的四种方法的更多相关文章

  1. 史上最全的 jmeter 获取 jdbc 数据使用的4种方法——(软件测试Python自动化)

    周五,下班了吗?软件测试人. 明天是周末了!给大家推荐一个技术干货好文.史上最全的 jmeter 获取 jdbc 数据使用的四种方法.我也精剪了jmeter的自动化接口测试的视频放在了同名UP主,周末 ...

  2. JAVA中获取文件MD5值的四种方法

    JAVA中获取文件MD5值的四种方法其实都很类似,因为核心都是通过JAVA自带的MessageDigest类来实现.获取文件MD5值主要分为三个步骤,第一步获取文件的byte信息,第二步通过Messa ...

  3. MYSQL获取自增ID的四种方法

    MYSQL获取自增ID的四种方法 1. select max(id) from tablename 2.SELECT LAST_INSERT_ID() 函数 LAST_INSERT_ID 是与tabl ...

  4. YSQL获取自增ID的四种方法(转发)

    YSQL获取自增ID的四种方法(转发) 1. select max(id) from tablename 2.SELECT LAST_INSERT_ID() 函数 LAST_INSERT_ID 是与t ...

  5. DBS-MySQL:MYSQL获取自增ID的四种方法

    ylbtech-DBS-MySQL:MYSQL获取自增ID的四种方法 1.返回顶部 1. 1. select max(id) from tablename 2.SELECT LAST_INSERT_I ...

  6. JavaSE-反射-获取类或者对象的四种方法

    1.使用Class类的静态方法Class.forName("xxxx"); 新建一个要想要获取的类 package org.burning.sport.javase.classlo ...

  7. JMeter 使用 http长连接 |史上最全

    疯狂创客圈 Java 高并发[ 亿级流量聊天室实战]实战系列 [博客园总入口 ] 疯狂创客圈(笔者尼恩创建的高并发研习社群)Springcloud 高并发系列文章,将为大家介绍三个版本的 高并发秒杀: ...

  8. 史上最全阿里 Java 面试题总结

    以下为大家整理了阿里巴巴史上最全的 Java 面试题,涉及大量 Java 面试知识点和相关试题. JAVA基础 JAVA中的几种基本数据类型是什么,各自占用多少字节. String类能被继承吗,为什么 ...

  9. 史上最全 69 道 Spring 面试题和答案

    史上最全 69 道 Spring 面试题和答案 目录Spring 概述依赖注入Spring beansSpring注解Spring数据访问Spring面向切面编程(AOP)Spring MVC Spr ...

随机推荐

  1. 一篇看懂Docker

    松勤教育2020.4.20 我要分享     Docker 是什么? Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口.它是目前最流行的 Linux 容器解决方案. Dock ...

  2. 学员操作——制作5s关闭广告

    <!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>广 ...

  3. c语言"##"的使用

    #include<stdio.h> #define Operations(x) operation_ ## x // ## 是黏贴字符串 int Operations(sum)(int x ...

  4. Javascript数组迭代精髓,拿去花

    数组迭代 数组迭代是处理各数组的利器,编写代码时常常会用到,为我们提供了大大的便利.如果还不知道,真的别告诉别人你知道js哈哈. 以下迭代方法均不会改变原数组,带*为必选对象. 1.arr.forEa ...

  5. vue环境配置脚手架搭建,生命周期,钩子

    Vue项目环境搭建 """ node ~~ python:node是用c++编写用来运行js代码的 npm(cnpm) ~~ pip:npm是一个终端应用商城,可以换国内 ...

  6. Python进阶之浅谈内置方法(补充)

    目录 列表类型的内置方法 元组类型的内置方法 字典类型的内置方法 集合类型的内置方法 列表类型的内置方法 1.作用:描述名字,说的话等 2.定义方式 s=['tim','age'] s=str('ti ...

  7. 服务消费者(Feign-下)

    上一篇文章中已经讲述 Feign的基本用法,本章主要概述 FeignClient GET/POST/PUT/DELETE restful写法以及 Feign 拦截器,与配置优化方案,关闭HttpCli ...

  8. Spark 环境问题记录和解决方法

    Spark 版本配套表 名称 版本 说明 Spark spark-2.3.0-bin-hadoop2.7 Spark mongo-java-driver-3.5.0.jar 3.5 Mongo驱动 m ...

  9. 【区间DP】低价回文

    [区间DP]低价回文 标签(空格分隔): 区间DP 回文词 [题目描述] 追踪每头奶牛的去向是一件棘手的任务,为此农夫约翰安装了一套自动系统.他在每头牛身上安装了一个电子身份标签,当奶牛通过扫描器的时 ...

  10. 确定比赛名次 UDU-1285 + 逃生 UDU 4857 拓扑排序(找不同)

    确定比赛名次 题目大意 有N个比赛队(1<=N<=500),编号依次为1,2,3,....,N进行比赛,比赛结束后,裁判委员会要将所有参赛队伍从前往后依次排名,但现在裁判委员会不能直接获得 ...