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 (自由断言):可进行自定义验证。

三、实际应用

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

相关推荐
九皇叔叔2 小时前
【9】PostgreSQL 之 vacuum 死元组清理
数据库·postgresql
风雅的远行者2 小时前
mysql互为主从失效,重新同步
数据库·mysql
宇钶宇夕3 小时前
S7-1200 系列 PLC 中 SCL 语言的 PEEK 和 POKE 指令使用详解
运维·服务器·数据库·程序人生·自动化
绿蚁新亭3 小时前
Spring的事务控制——学习历程
数据库·学习·spring
scilwb4 小时前
占用栅格地图数据集
数据库
时序数据说5 小时前
时序数据库的存储之道:从数据特性看技术要点
大数据·数据库·物联网·开源·时序数据库·iotdb
鸥梨菌Honevid6 小时前
QT解析文本框数据——概述
数据库·qt·mysql
今天又得骑车了6 小时前
一、MySQL 8.0 之《EXPLAIN ANALYZE 执行计划》
数据库·mysql·database
野犬寒鸦7 小时前
MyBatis-Plus 中使用 Wrapper 自定义 SQL
java·数据库·后端·sql·mybatis
我爱一条柴ya7 小时前
【AI大模型】RAG系统组件:向量数据库(ChromaDB)
数据库·人工智能·pytorch·python·ai·ai编程