当前位置: 首页 > news >正文

JMeter数据库连接操作及断言

一、数据库操作

  1. 应用场景
    • 接口自动化数据校验:用于验证接口返回的数据与数据库中的数据是否一致。
    • 特殊业务:处理一些与数据库相关的特殊业务逻辑。
    • 性能测试:测试数据库的性能,如查询、更新等操作的响应时间。
  2. 连接数据库步骤
    • 下载配置MySQL的jdbc驱动(mysql - connector - java.jar)
      • 下载地址:https://mvnrepository.com/artifact/mysql/mysql - connector - java
      • 配置:将其放到指定目录,或放在…\apache - jmeter\lib\目录下,并在测试计划下添加驱动地址。
    • 配置连接: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 (自由断言):可进行自定义验证。

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

http://www.lryc.cn/news/404390.html

相关文章:

  • Maven settings.xml 私服上传和拉取配置
  • 【STM32】MPU内存保护单元
  • 用Python爬虫能实现什么?
  • 【QT】label中添加QImage图片并旋转(水平翻转、垂直翻转、顺时针旋转、逆时针旋转)
  • CSP-J模拟赛day1
  • Docker构建LNMP环境并运行Wordpress平台
  • 《峡谷小狐仙-多模态角色扮演游戏助手》复现流程
  • Qt 使用Installer Framework制作安装包
  • Typora 1.5.8 版本安装下载教程 (轻量级 Markdown 编辑器),图文步骤详解,免费领取(软件可激活使用)
  • linux代填密码切换用户
  • 防火墙的经典体系结构及其具体结构
  • 【BUG】已解决:note: This is an issue with the package mentioned above,not pip.
  • 【ARM】SMMU系统虚拟化整理
  • PYQT按键长按机制
  • SAPUI5基础知识15 - 理解控件的本质
  • 十七、【机器学习】【非监督学习】- K-均值 (K-Means)
  • 算法力扣刷题记录 五十六【501.二叉搜索树中的众数】
  • 分布式搜索引擎ES-Elasticsearch进阶
  • 低代码与传统编程:快速高质量构建系统的比较与方法
  • WebRTC音视频-环境搭建
  • Memcached开发(八):使用PHP进行操作
  • [Spring Boot]Protobuf解析MQTT消息体
  • 什么是Mappers?Mappers的作用是什么?
  • python-多任务编程
  • IDEA创建Java工程、Maven安装与建立工程、Web工程、Tomcat配置
  • 使用工作流产生高质量翻译内容的实战教程
  • 笔记:Few-Shot Learning小样本分类问题 + 孪生网络 + 预训练与微调
  • 初学Mybatis之 CRUD 增删改查
  • Kali Linux APT 设置指南:如何控制软件包更新行为
  • Android 10.0 Settings 加载流程