• jmeter连接mysql数据库


    背景:做接口压力测试时可能需要从数据库中读取数据作为参数进行传递,jmeter提供JDBC连接的相关元件,本文记录jmeter连接mysql数据库进行参数传递的关键步骤和方法

    1、下载mysql数据库驱动包并添加到测试计划中

    1.1 先查看服务器中安装的数据库版本,下载一个高于数据库版本的数据库驱动包,如:服务器mysql版本为5.6.0,我下载的是mysql-connector-java-8.0.11.jar

    1.2 在jmeter的测试计划中添加下载的jar文件

    2、在线程组中添加JDBC Connection Configuration并配置数据库连接参数

    2.1 右键线程组->添加->配置元件->JDBC Connection Configuration

    2.2 填写配置信息,如下图所示

    参数说明:

    Varibale Name:注意变量名,后面添加jdbc请求时需要与该名字一致

    Database URL:数据库连接地址,jdbc://mysql/地址:port/db_name,加上“?useUnicode=true&characterEncoding=utf8”为了避免后续相关测试的时候中文显示乱码

    JDBC Driver class:com.mysql.jdbc.Driver 

    Username:数据库用户名

    Password:数据库密码

    3、添加JDBC Request

    3.1 线程组->添加->Sample->JDBC Request

     

    3.2 添加需要查询的语句【不带变量】

    参数说明:

    Variable Name:之前配置的JDBC Connection Configuration的Variable Name名称保持一致

    Query Type:含变量的sql查询,选择Prepared Select Statement,不含变量的sql查询,选择Select Statement,同理update的选项

    Query:输入sql语句,注意不要加分号

    Parameter values:引用用户定义的其他变量

    Parameter types:变量的类型

    Variable names:保存查询结果,供其他元件调用,这里需要是order_no需要作为变量保存结果;当查询结果是多个字段时,变量用逗号隔开,如new_order_no,new_id。

    Result variable name:上面Variable names中的变量是个数与列对应的,Result variable name是把整个结果存在一个数组中,返回结果有点类似json字符串

    3.3 运行下脚本,检查是否可以正常从数据库查询数据【不带变量】

     3.5 添加需要查询的语句【带变量】,选择Query Type为prepared select statement

     3.5.1 方法一:SQL中带变量可以通过?占位符填充变量,如下图所示

    3.5.2  方法二:直接在SQL语句中通过${} 引用参数

     3.5.3 检查带变量输出的结果以及将结果保存为数组输出的结果

    4、实际的测试过程中通常我们只需要查询一次,查询结果供其他请求使用,可以通过仅一次控制器实现

    4.1 线程组->添加->逻辑控制器->仅一次控制器,将JDBC request移动到仅一次控制器内部,如下图所示

     关于其他请求调用JDBC Request变量的方法请关注后续笔记

  • 相关阅读:
    @@@并发实战
    @@@jvm实战
    @@@spring Boot环境下dubbo+zookeeper实战
    FastJson 支持配置的PropertyNamingStrategy四种策略
    利用MySQL统计一列中不同值的数量方法示例
    Springboot+websocket+定时器实现消息推送
    Spring AOP中args()、arg-names、argNames
    squid,nginx,lighttpd反向代理的区别
    HashMap底层实现原理/HashMap与HashTable区别/HashMap与HashSet区别
    HTTP 错误 500.24
  • 原文地址:https://www.cnblogs.com/simple1025/p/11190458.html
Copyright © 2020-2023  润新知