美文网首页
jmeter-数据库提取数据并参数化

jmeter-数据库提取数据并参数化

作者: 菜鸟平 | 来源:发表于2018-05-29 18:55 被阅读0次

    一、链接数据库

    1.下载mysql驱动(mysql jdbc driver)下载地址:https://dev.mysql.com/downloads/connector/j/5.1.html
    2.解压后将.jar驱动文件拷贝到jmeter安装目录lib文件夹下
    3.创建"JDBC Connection Configuation" (配置元件→JDBC Connection Configuation)
    image.png

    参数说明:

    • Variable Name:数据库连接池的名称,名字可自定义,但是必须与* * JDBC Request中的Variable Name保持一致
    • Database URL:数据url jdbc:mysql://主机ip或者机器名称:mysql监听的端口号/数据库名称,例如:jdbc:mysql://localhost:3306/sqltest
    • JDBC Driiver class:JDBC驱动
    • Username:数据库登录的用户名
    • Password:数据库登录的密码

    二、JDBC Request配置

    1.创建 "JDBC Request"(Sampler→JDBC Request)
    image.png
    2.添加Debug Sampler,查看结果树,运行后查看
    image.png image.png

    结果说明:

    查询数据库表student,并将查询结果存放在变量中,可通过${id_#}来获取列表中的数据(例如:${id_1}获取第一列数据、${name_1获取第二列数据})

    参数说明:

    • Variable Name:数据库连接池的名字,需要与JDBC Connection * * * Configuration 的 Variable Name Bound Pool 名字保持一致
    • SQL QUERY:多条sql语句,需要用“;”隔开
    • Select Statement:仅支持测试select语句,并且一次只能测试一条
    • Update Statement:支持测试费select语句,并且支持测试多条
      若中夹杂select语句,会自动忽略若第一条语句为select语句,则会报错
    • Callable Statement:语法正确,支持多条任何语句,如果需同时执行多条语句,JDBC Connection Configuration 中 Database URL,配置中加上?allowMultiQueries=true,否则报错(例如:jdbc:mysql://localhost:3306/sqltest?allowMultiQueries=true)
    • Parameter valus:参数值
    • Parameter types:参数类型,(例如:int char varchar等)
    • Variable names:保存sql语句返回结果变量名
    • Result variable name:创建一个对象变量,保存所有返回的结果
    • Query timeout:查询超时时间
    • Handle result set:定义如何处理由callable statements语句返回的结果

    三、数据参数化

    1.添加ForEach控制器(逻辑控制器→ForEach控制器)
    image.png

    参数说明:

    • 输入变量前缀:本例中为id(与JDBC Requse中的返回结果Variable names变量名一致)
    • Start index for loop (exclusive):循环开始的索引(默认从0开始,如果填写是2,实际是从2+1个开始执行)
    • End index for loop(inclusive):循环结束的索引
    • 输出变量名称:提供给其他控件引用,可自定义,调用时使用该参数
    • Add“-”before number:输入变量名称中是否使用-进行间隔。
    2.添加JDBC Request
    image.png
    3.运行后查看
    image.png

    相关文章

      网友评论

          本文标题:jmeter-数据库提取数据并参数化

          本文链接:https://www.haomeiwen.com/subject/axpojftx.html