【前言】
为什么要去直连数据库,去操作数据库?
因为在我们做自动化的时候,或者在大批量准备数据的时候,自动化的时候有时候会生成很多条页面上,接口上无法删除的数据,那么就很有很多的测试数据遗留在系统上,这个时候就需要去数据库删除这些历史很久的测试数据,那么如果不想人工干预怎么办,这个时候可选择直连数据库删除多余的数据。
还有就是在大批量准备测试数据,这个时候如果在页面上一个个去准备,或者是接口不断的循环,很有可能会占用很多线程,接口承受不住压力,导致服务器挂掉。这个时候就可以选择直连数据库,去准备数据。
【Jmeter操作数据库】
我们先谈谈jmeter怎么去直连,操作数据库。
-
jmeter本身不具备数据连接的功能,需要整合第三方去实现
- 配置数据库连接信息
- 使用JDBC Request去操作数据库数据
- 将数据传递给HTTP请求
【具体操作】
- 整合第三方去实现,需要引入1个jar包。sqlite-jdbc-3.2.1jar文件, 将这个jar文件放到jmeter的lib目录下。
- 在jmeter的配置元件中找到JDBC Connection Configuration,进行连接数据库操作。注意DataBase URL是固定写法jdbc:sqlite:数据库路径(路径可以写成:10.72.100.41:8080:test_data_1)。JDBC driver class也是固定写法jdbc:sqlite。主要是变量名+数据库路径+第三方启动入口+账号密码
- 然后去配置JDBC Request。SQL语句的类型一般有select statement和 update statement
- 最后可以把JDBC Request设置的变量名赋值给我们的HTTP请求,去完成http请求。 举例,比如jdbc request设置的变量名为flield,那么赋值给http时可以路径就可以写flield,具体参数可以写flield_1,这个表示赋值是flield的第一个值赋值