JMeter数据库连接操作及断言

一、数据库操作

  1. 应用场景
    • 接口自动化数据校验:用于验证接口返回的数据与数据库中的数据是否一致。
    • 特殊业务:处理一些与数据库相关的特殊业务逻辑。
    • 性能测试:测试数据库的性能,如查询、更新等操作的响应时间。
  2. 连接数据库步骤
    • 下载配置MySQL的jdbc驱动(mysql - connector - java.jar)
    • 配置连接:JDBC Connection Configuration
      • 主要配置
        • Variable Name Bound to Pool:配置变量名称。
        • Variable Name:不能为空。
        • Database connection
          • Database URL:格式为jdbc:mysql://服务器ip:端口号/数据库。
          • JDBC Driver class
          • 用户名和密码
      • 备注:若select语句中含有中文字符,导致JMeter识别不了,可在JDBC的连接中增加useUnicode=true&characterEncoding=utf8。
    • 向数据库发送请求
      • 实例1:数据库 - 基础操作:通过JDBC Request添加变量和查询语句。
      • 实例2:数据库 - 预操作:使用Prepared Select Statement进行查询,查询出来的数据保存在变量中(Store as Object)。
      • 实例3:数据库 - 批量执行:通过Callable Statement执行批量操作,包括更新和查询语句。

二、断言

  1. 为什么要做断言:验证测试结果是否符合预期,确保系统的正确性和稳定性。
  2. 要断言的内容:包括响应的报文内容、响应状态码、响应时间等。
  3. 要断言的内容在什么地方:根据不同的断言类型,断言的内容可以在响应文本、响应内容、JSON数据等中。
  4. JMeter常用四种断言
    • Response Assertion(响应断言):判断响应的报文内容,作用对象包含响应文本、响应内容、响应状态码、响应信息等,模式匹配规则包括、匹配、相等、字符串,前两者支持正则表达式,后两者纯字符串。
    • JSON Assertion(JSON断言):前提条件是安装插件jpgc - Standard Set,用于验证JSON数据的正确性。
    • Duration Assertion(持续时间断言):允许的响应时间的最大值,若响应时间大于设定的最大值,则断言不通过。
    • Beanshell Assertion (自由断言):可进行自定义验证。

三、实际应用

在实际应用中,如登录、创建任务、验证任务等场景,都可以使用断言和数据库比对来验证系统的正确性和稳定性。

相关推荐
娇娇yyyyyy17 分钟前
Qt编程(3): 信号和槽函数
开发语言·数据库·qt
乌鸦乌鸦你的小虎牙3 小时前
qt 5.12.8 配置报错(交叉编译环境)
开发语言·数据库·qt
一只大袋鼠4 小时前
Redis 安装+基于短信验证码登录功能的完整实现
java·开发语言·数据库·redis·缓存·学习笔记
Anastasiozzzz4 小时前
深入研究Redis的ZSet底层数据结构:从 Ziplist 的级联更新到 Listpack 的完美救场
数据结构·数据库·redis
菠萝蚊鸭4 小时前
x86 平台使用 buildx 基于源码构建 MySQL Wsrep 5.7.44 镜像
数据库·mysql·galera·wsrep
沙漏无语6 小时前
(二)TIDB搭建正式集群
linux·数据库·tidb
姚不倒6 小时前
三节点 TiDB 集群部署与负载均衡搭建实战
运维·数据库·分布式·负载均衡·tidb
隔壁小邓6 小时前
批量更新方式与对比
数据库
数据知道6 小时前
MongoDB复制集架构原理:Primary、Secondary 与 Arbiter 的角色分工
数据库·mongodb·架构
人道领域6 小时前
苍穹外卖:菜品新增功能全流程解析
数据库·后端·状态模式