原标题:1小时带你学会使用Jmeter实现后端接口测试
今天主要跟大家来分享一下基于Jmeter连接Mysql数据库做接口测试。Mysql作为一个非常流程的数据库,有时候我们需要对Mysql数据库的查询执行效率进行性能测试,怎样使用Jmeter对Mysql数据库进行测试,是我们今天要与大家分享的重点内容。
什么是数据库测试?
顾名思义:数据库测试指对数据库的接口进行测试,平时我们访问前端页面也好,还是基于接口逻辑中间层,包括根据前端逻辑数据内容通过服务器将数据传递给后面数据服务,这中间的衔接无不涉及接口,如果有一端功能导致接口不通都会引起重大bug,例如:平时我们进入某购物平台购买商品,在购买商品之前用户需要申请注册用户账号,基于注册成功的账号进行查找商品,下订单、提交订单等相关的购买流程都涉及到与后端数据库服务的交付,如果仅仅基于UI界面来实现接口测试并不能保证后端服务数据的存储是否会存在异常。所以我们需要学习基于前端功能与接口实现数据库测试。
为什么要进行数据库测试?
没有对数据库后端接口进行测试,并不能保证数据存储的正确性,为了更好的保证数据库与前端UI界面能够正常交付,所以我们需要对数据库进行测试,一般做数据库测试有哪些方法呢:例如:平时大家所熟悉的Jmeter测试工具就可以用来做数据库测试,当然我们也可以通过编写存储过程代码实现数据库库测试,包括基于功能层面可以根据前端UI界面手工输入的数据通过接口到达数据库服务端,然后再通过SQL语句来查询我们基于前端提交的数据是否正确,从而更好的保证软件产品的质量,至少不会导致数据出现bug及服务器访问等相关问题。
如何基于数据库实现接口测试?
首先我们需要学习一款接口测试工具,基于接口测试工具了解相关的接口测试基础以及数据库基本操作语言等相关内容,学会基于mysql创建数据,新建表,表与表之间的关联关系查询及常用的数据库操作函数,以及相关jmeter接口测试工具的使用,新建线程组,基于线程组新建JDCB请求与JDBC连接配置属性等相关内容,包括检查结果树相关内容。具体实现接口测试过程详解请见如下内容:
我们需要准备一个有数据库表的mysql数据库,如下图所示:
首先需下载安装mysql数据库,新建数据库-新建表。
其次,需要在Jmeter测试计划面板点击"浏览"按钮,将你的JDBC驱动添加进来。
再次,添加一个线程组,右键点击"线程姐",在下面添加一个"JDBCConnectionConfiguration"连接配置,并配置好各项参数,如下图所示:
图一
图二
基于以上图表分析,有几个重要的参数需要详细讲解一下:
需要访问的变量名称设置,VariableName:mysql;解释变量名:变量值。
数据库的连接配置,字段名:值,例如:DatabaseURL:jdbc:mysql://127.0.0.1:3308/zentao
解释说明:数据库连接地址包括:数据库驱动及数据库类型,所对应的IP地址与端口和数据库名。
JDBCDriverclass属性值根据属性值选择字段名称,根据使用的驱动名称填写就好,例如:字段名称:字段值,JDBCDriverclass:com.mysql.jdbc,Driver
需要注意变量名称与属性的配置
添加取样器(Sampler)"JDBCRequest"请求,添加进来之后,可以看到有一个VariableName:mysql的属性值需要与JDBC连接配置文件中的属性名称要一致,否则无法正常访问数据库。
图一:基于线程组添加JDBCRequest请求
图二:读取服务器中的数据库为:zentao的数据库中的表数据如下图所示
图三:为请求添加响应断言,如果有结果返回:test001
图四:添加一个查看结果树,用来查看jdbc发送请求结果情况
图五:添加聚合报告,这个内容一般用于性能测试过程中
图六:执行接口请求,查看结果分析,如下图所示
总结:花了1个小时整理了一些关于Jmeter基于后端服务实现接口测试的过程,希望大家能够基于以上内容自己能够学会下载安装jmeter,再基于jmeter新建数据库及数据库表能够自己连接数据库实现对后端服务的接口测试,接口测试基于并不难,更重要的是大家平时学习一定要具备一定的接口测试基础及懂得接口测试的原理是什么,只需要把这些基础知识掌握,入门学习接口测试就变得非常简单,所有的工具都是为了提升测试效率而存在,所以希望大家能够根据我讲解的内容进一步丰富自己的测试知识面。