前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Jmeter系列(31)- 获取并使用 JDBC Request 返回的数据

Jmeter系列(31)- 获取并使用 JDBC Request 返回的数据

作者头像
小菠萝测试笔记
发布2020-06-29 10:07:51
2.6K0
发布2020-06-29 10:07:51
举报
文章被收录于专栏:自动化、性能测试

前言

  • Jmeter 使用 JDBC Request 获取数据库中数据,很多人都会用,因为测试中,有时候需要大量的用户进行登录,然后获取数据库中真实的数据用于测试
  • 前面也详细讲到 JDBC Request 的具体使用,一般是通过 Variable names 和 Result variable name 来获取返回的数据
  • 这篇文章主要讲的就是把 Variable names 和 Result variable name 获取到的数据提取出来,给到 HTTP 请求使用

Variable names + Foreach控制器

线程组结构树

JDBC Request

调试取样器运行结果

有 100 条记录

ForEach控制器

循环运行的结果( mobile:${mobile} )

Variable names + 循环控制器

和上面的栗子只是换了个控制器而已,没太大变化

线程组结构树

循环控制器

填写 100,是代表循环100次

计数器

从 1 开始,递增加到 100为止,每次递增 1

  • 初始值=1
  • 每次增加 1
  • 最大的值=100(包含)
  • 新变量 num

循环控制器内的 Debug Sampler

${__V()} 是关联函数,后面讲到

循环运行的结果( mobile:${mobile} )

Result variable name + Foreach控制器

线程组结构树

JDBC Request

正则提取器

重点

Applu to 选中 Jmeter Variable Name to use,因为要从 Jmeter Variables 中拿到 result_mobile 变量进行提取

调试取样器运行结果

正则提取后的值是不是跟上面 Variable names 获取的值列表很像,是的!然后再结合 ForEach控制器就好啦

ForEach控制器

变量前缀是正则提取器里的引用名称

循环运行的结果( mobile:${mobile} )

Result variable name + 循环控制器

和上面的栗子只是换了个控制器而已,没太大变化

线程组结构树

循环控制器

填写 100,是代表循环100次

计数器

用户参数

重点一

${__BeanShell(vars.getObject("result_mobile").get(${num}).get("mobile"))}

  • :执行BeanShell脚本,一般比较短的脚本可以用此方法来写,后面会再详细讲解这个函数

${__BeanShell()}

重点二

vars.getObject("result_mobile").get(${num}).get("mobile")

  • result_mobile:是一个数组,即 JDBC Request 里的 Result variable name,每个元素的格式都是

{mobile=158000480001}

  • ${num}:上面计数器的值,每次递增 1,这里是数组下标的意思
  • 总结:获取 result_mobile 数组,每次取数组中第 num 个元素,从元素中取 mobile 键的值【这是固定写法,只改Object 名、键名就行了】

循环运行的结果( mobile:${user_mobile} )

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-06-24 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • Variable names + Foreach控制器
    • 线程组结构树
      • JDBC Request
        • 调试取样器运行结果
          • ForEach控制器
            • 循环运行的结果( mobile:${mobile} )
            • Variable names + 循环控制器
              • 线程组结构树
                • 循环控制器
                  • 计数器
                    • 循环控制器内的 Debug Sampler
                      • 循环运行的结果( mobile:${mobile} )
                      • Result variable name + Foreach控制器
                        • 线程组结构树
                          • JDBC Request
                            • 正则提取器
                              • 重点
                            • 调试取样器运行结果
                              • ForEach控制器
                                • 循环运行的结果( mobile:${mobile} )
                                • Result variable name + 循环控制器
                                  • 线程组结构树
                                    • 循环控制器
                                      • 计数器
                                        • 用户参数
                                          • 重点一
                                          • 重点二
                                        • 循环运行的结果( mobile:${user_mobile} )
                                        领券
                                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档