• 10分钟学会数据库压力测试


    本文章出自【码同学软件测试】

    码同学公众号:自动化软件测试,领取资料可加:Matongxue_8

    码同学抖音号:小码哥聊软件测试

     

    前言

    很多人提到jmeter时,只会说到jmeter进行接口自动化或接口性能测试,其实jmeter还能对数据库进行自动化操作。个人常用的场景有以下:

    1. 对自动化产生的数据,进行删除

    2. 不断修改数据,进行多业务场景测试

    ……(更多使用场景需要个人根据自己不同的需求去挖掘)

    大家都知道,在逛淘宝/天猫等电商平台时,页面显示的数据一定要及时的呈现,否则会影响用户体现,所以对数据库的性能测试就必不可少。

    本文主要通过对XXXX订单系统的订单数进行自动化查询和数据库查询速度进行压力测试。

    在使用jmeter对数据库进行压力测试之前需要掌握两个基本知识:

    1.如何使用jmeter连接数据库

    2.如何使用jmeter执行数据库相关操作命令

     

    环境准备

    查看数据库版本

    使用navicat查看数据库版本

     

    免费领取 码同学软件测试 课程笔记+超多学习资料+完整视频+最新面试题,领取资料可加:Matongxue_8

     

    下载驱动:

    地址:https://dev.mysql.com/downloads/

    下载成功后放入jmeter安装路径的ext文件夹下,并解压

    驱动jar文件放到ext文件夹后,需要重新启动jmeter,才可生效

    若没有下载驱动,则运行时报错:Response message: java.sql.SQLException: Cannot load JDBC driver class 'com.mysql.jdbc.Driver'

     

    数据库配置信息

    Jmeter提供JDBC Connection Configuration用于配置数据库的连接信息

    菜单路径

     

    配置

    Variable Name Bound to Pool模块配置

    Variable name for created pool:创建数据库连接池变量名称

     

    Connection pool configuration模块配置

    该模块配置一般使用默认值即可

    1. Max Number of Connections: 数据库的最大连接数

    2. Max Wait(ms):最大等待时长

    3. Time Between Eviction Runs (ms):

    4. Auto Commit: 自动提交。有三个选项,true、false、编辑(自己通过jmeter提供的函数设置),默认true,所以修改数据库时会直接真实修改

    5. Transaction Isolation: 事务间隔级别设置,默认default

     

    Database Connection Configuration模块配置

    该模块配置主要用于配置数据库的连接信。

    1. Database URL:jdbc:mysql://数据库ip/数据库端口/数据库名称

    2. JDBC Driver class:驱动名称,下拉选项选择

    3. Username:用户名

    4. Password:密码

     

    数据库请求

    JDBC Request用于执行SQL语句

    菜单路径

    免费领取 码同学软件测试 课程笔记+超多学习资料+完整视频+最新面试题,领取资料可加:Matongxue_8

     

    配置

    Variable Name Bound to Pool

    Variable name of pool declared in JDBC connection configuration:数据库连接池的变量名称

    因为连接数据库是需要在JDBC Connection Configuration中配置好相关连接信息的,然后赋予一个变量名称,那么JDBC Request想要去访问数据库,就必须通过这个配置好的变量名称去连接,所以JDBC Reques就需要通过读取JDBC Connection Configuration的变量中的信息

     

    Query type(SQL语句类型)

    Select statement:查询语句,仅支持单条语句

    Update statement:修改语句,支持多条语句

    ……其他类型可自行百度

     

    初级实践-数据库查询

    在进行接口性能测试之前,必须先学会基础的接口自动化测试。

     

    脚本结构

    添加监听器View Results Tree查看脚本执行结果,脚本结构如下:

    脚本(执行查询语句)

    结果

     

    进阶实践-数据库查询压力测试

    在接口自动化的基础上,配置需要的压测数据,就可以进一步对接口进行性能测试了。

    需要注意的配置:

    1. 并发数的设置

    2. 添加View Results Tree时,为了避免对性能测试结果造成影响,需要设置为仅展示错误信息

    3. 添加Graph Results图形结果,这个监听器展示接口请求响应时间的平均值、中值、偏离值、吞吐量

    4. 添加Response Time Graph响应时间图表,这个监听器将请求响应时间以折线图的方式展示出来

     

    部分效果如下图

     

    END

    免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频,领取资料可加:Matongxue_8/关注我们公众号哦:自动化软件测试

    本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  • 相关阅读:
    最新Xcode7.x环境下上架iOS App到AppStore 完整流程
    rails提供的validators
    Ruby 符号【转】
    xaml学习笔记
    fedora安装rails缺少js runtime和cannot load such file -- sqlite3/sqlite3_native解决办法
    学习笔记——敏捷开发
    结队编程(电梯调度问题)
    【转】javascript操作Select标记中options集合
    【软件工程】Word frequency program
    【转】诗社之死
  • 原文地址:https://www.cnblogs.com/testfan2019/p/15791552.html
Copyright © 2020-2023  润新知