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

三、实际应用

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

相关推荐
zh1570233 小时前
JavaScript中WorkerThreads解决服务端计算瓶颈
jvm·数据库·python
代码AI弗森3 小时前
一文理清楚“算力申请 / 成本测算 / 并发评估”
java·服务器·数据库
摇滚侠4 小时前
expdp 查看帮助
java·数据库·oracle
流年似水~4 小时前
MCP协议实战:从零搭建一个让Claude能“看见“数据库的工具服务
数据库·人工智能·程序人生·ai·ai编程
2401_871492854 小时前
Vue.js监听器watch利用回调函数处理级联下拉框数据联动
jvm·数据库·python
志栋智能5 小时前
超自动化安全:构建智能安全运营的核心引擎
大数据·运维·服务器·数据库·安全·自动化·产品运营
zhoutongsheng6 小时前
C#怎么实现Swagger文档 C#如何在ASP.NET Core中集成Swagger自动生成API文档【框架】
jvm·数据库·python
WinterKay6 小时前
【开源】我写了一个轻量级本地数据库浏览工具,支持 MySQL/Redis 只读查询
数据库·mysql·开源
zxrhhm7 小时前
Oracle 索引完整指南
数据库·oracle
程序猿乐锅8 小时前
【Tilas|第三篇】多表SQL语句
数据库·经验分享·笔记·学习·mysql