Jmeter 数据库测试

1、环境准备,下载驱动 mysql-connector-java-5.1.45-bin.jar

  • 下载的 jar 包保存在 Jmeter 的文件的 lib 下的 ext 目录下,则不需要做其他的配置了,也不用担心以后给其他电脑 copy 文件,忘记 copy 某个文件夹了【推荐这一种,免得 jar 被删除而没有头绪】

2、再 TestPlan 中导入 jar 文件

3、jdbc 配置

  • 有了依赖的 jar 包后,再线程组上从配置元件中选择 JDBC Connection Configuration,如下
  • 将以上分为 4 个区域,先来介绍 1 区域 Variable Name for created pool:
    • Variable Name:填写入一个变量名,需要和用到的 JDBC request 中,或者 JDBC PreProcessor,或者 JDBC PostProcessor 中的变量名一致;如此一来,一个测试计划中可以绑定多个 DB 源
  • 其次介绍 2 区域,数据库连接的配置,将数据库 url/port/db name/ 用户名和密码等填入,按照下面常用的 sample 填写即可
  • mysql 数据库配置

    •  Variable Name:数据库连接池的名称,我们可以有多个 jdbc connection configuration,每个可以起个不同的名称,在 jdbc request 中可以通过这个名称选择合适的连接池进行使用
    •  Database URL:数据库url,jdbc:mysql://主机ip或者机器名称:mysql监听的端口号/数据库名称, 如:jdbc:mysql://localhost:3306/test,通常加上字符编码等,如  jdbc:mysql://ip:3306/数据库名?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true
      • 需要执行多条 sql 语句,则在 database url 中需要接上 “?allowMultiQueries=true”
    •  JDBC Driver class:JDBC 驱动,如:com.mysql.jdbc.Driver
    •  username:数据库登陆的用户名
    •  passwrod:数据库登陆的密码
  • sqlserver 数据库配置

 

    • Database URL:jdbc:sqlserver://localhost:1433;databaseName=test  
    • JDBC Driver class:com.microsoft.sqlserver.jdbc.SQLServerDriver  
  • Oracle 数据库: 

 

    • Database URL:jdbc:oracle:thin:user/pass@//host:port/service  
    • JDBC Driver class:oracle.jdbc.OracleDriver  
  • 接下来介绍 区域,一般默认,Validation Query 一般选择 select 1

 

4、jdbc 请求

  • 在取样器 sample 中添加 JDBC Request
    •  Variable Name:数据库连接池的名字,需要与 JDBC Connection Configuration的Variable Name Bound Pool 名字保持一致
  •  Query type:(常用的如下)
    • Select statement  查询语句类型
      • 仅支持测试查询语句,并且一次只能执行一条

    • Callable Statement  多条语句类型
      • 只要语法正确,任何语句,再多的条数都能支持

    • Update statement  支持测试非 select 语句,并且支持测试多条
      • 若其中夹杂 select 语句,自动忽略
      • 若第一条语句为 select 语句,报错

    • Prepared Select Statement  用于绑定变量重用执行计划,对于多次执行的 SQL 语句,Prepared statement 无疑是最好的类型(生成执行计划极为消耗资源,两种实现速度差距可能成百上千倍),PreparedStatement 的第一次执行消耗是很高的. 它的性能体现在后面的重复执行
    • Prepared update statement
      • Prepared update statement 和 Prepared select statement 的用法是极为相似的  
  •  Parameter valus:参数值
  •  Parameter types:参数类型:varchar、integer...
  •  Variable names:保存 sql 语句返回结果的变量名
  •  Result variable name:创建一个对象变量,保存所有返回的结果
  •  Query timeout:查询超时时间
  •  Handle result set:定义如何处理由 callable statements 语句返回的结果
原文地址:https://www.cnblogs.com/ZhengYing0813/p/11695793.html