网站开发的技术简介是什么,设计得到app下载,搜索引擎优化的各种方法,做网站是不是要模板近期用JMeter做接口测试#xff0c;遇到了一个需要用到数据数据库的场景#xff1a;一个关于数据报告的页面#xff0c;需要将数据库里面的数据求和或者取均值之后#xff0c;展示出来。
如果要断言的话#xff0c;需要连接数据库#xff0c;通过写sql语句#xff0c;将…
近期用JMeter做接口测试遇到了一个需要用到数据数据库的场景一个关于数据报告的页面需要将数据库里面的数据求和或者取均值之后展示出来。
如果要断言的话需要连接数据库通过写sql语句将sql查询结果与页面的结果进行对比。
以MySQL数据库为例具体实现的步骤如下
一、加载JDBC驱动二、连接数据库三、数据库的查询单值/多值引用一、加载JDBC驱动
一本地准备驱动jar包
注意驱动包的版本一定要与数据库的版本匹配驱动版本太低可能导致连接报错。
1、网盘下载
准备好MySQL的驱动找不到的可在网盘下载链接https://pan.quark.cn/s/b59620ad7f30提取码6WWw将文件放到JMeter安装文件夹下 2、在官网下载
进入官网https://dev.mysql.com/downloads/connector/j/选择Platform Independent。点击Download解压后找到jar文件将文件放到JMeter安装文件夹下 二导入驱动包
在JMeter的测试计划中找到Add directory or jar to classspath点击旁边的浏览选中包导入即可 二、连接数据库
一添加元件JDBC Connection Configuration
选中线程组鼠标右键添加–配置元件–JDBC Connection Configuration 二配置JDBC Connection Configuration 1、名称默认为空可自定义名称也可为空
2、注释默认为空可自定义也可为空
3、Variable Name for created pool一个连接名称例如命名为s_mysql1需要唯一标识后面的JDBC请求中需要用到所以需要与JDBC取样器中的名称一致简单理解就是jdbc request的时候需要确定去请求哪个数据库。
4、Max Number of Connections连接池中允许的最大数据库连接数默认10做性能测试时建议填 0
5、Max Wait(ms) 在连接池中取回连接最大等待时间单位毫秒默认10000默认即可
6、Time Between Eviction Runs(ms)线程可空闲时间单位毫秒默认60000默认即可 7、Auto Commit自动提交sql语句有三个选项True、False、编辑JMeter提供的函数设置默认为true 默认即可
8、Transaction Isolation事务隔离级别默认为DEFAULT默认即可
9、Test While Idle 当连接空闲时是否断开默认为True默认即可
10、Soft Min Evictable Idle Time(ms)连接池中连接的最小空闲时间以毫秒为单位。当连接池中的连接处于空闲状态且超过了 “Soft Min Evictable Idle Time” 的设定值时连接池可能会选择回收这些空闲连接默认为5000默认即可
11、Validation Query验证sql语法默认为select1默认即可
12、Database URL数据库连接 URL可以带上字符集characterEncodingutf-8也可允许多条sql执行allowMultiQueriestrue还可指定时区serverTimezoneUTC比如jdbc:mysql://10.0.41.104:33066/u_backend?serverTimezoneUTCcharacterEncodingutf-8allowMultiQueriestrue
13、JDBC Driver classJDBC的类默认为空必填项mysql就选择com.mysql.jdbc.Driver
14、Username数据库的用户名
15、Password数据库的密码
三、 数据库的查询单值/多值引用
一添加JDBC Request
1、选中简单控制器鼠标右键添加–Sample–JDBC Request 添加成功后填写对应参数
名称自定义
Variable Name of Pool declared in JDBC Connection Configuration要与JDBC Connection Configuration中的Variable Name for created pool值保持一致
Query Type根据填写的sql选择查询就选择Select Statement更新就选择Update Statement
Variable names对应sql查询结果的字段值 字段值有多少个则对应值就有多少个例如sql查出来有一个字段值reg_count那么下面就对应1个变量count
Handle ResultSet默认为Store as String选择默认值即可 当选择此选项时查询结果将以字符串的形式存储在变量中 二添加HTTP请求
添加HTTP请求填写名称HTTP请求方法路径等等 三添加响应断言
1、引用一个变量
引用变量的形式就是 变量 名 行 数 例如 {变量名_行数}例如 变量名 行 数例如{count_1}表示引用查询结果中count字段第1行的数据KaTeX parse error: Expected group after _ at position 5: {变量名_̲#}表示返回的行数例如{count_#}表示返回了几行。 2、引用多个变量
如果SQL查询出来的值有多个例如查询出来了5行记录每行三个字段pid_reg_count对应变量countpid_fee对应变量feeincome对应变量income。 可以添加一个Debug Sample查看每个值是怎么取的KaTeX parse error: Expected group after _ at position 7: {count_̲#}表示返回的行数{count_1}表示返回的count字段的第一行的值${count_2}表示返回的count字段的第二行的值。
fee1表示返回的fee字段的第一行的值{income_1}表示返回的income字段的第一行的值。。。依次类推。 今天的分享就到这里希望对大家所有启发。
最后感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走 这些资料对于【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴上万个测试工程师们走过最艰难的路程希望也能帮助到你