首页 > 代码库 > 接口自动化实战

接口自动化实战

废话少说,直接上接口自动化的实战。

需要的材料:

1、开发提供接口文档,如果没有接口文档,只要有URL也行,给大家普及下URL基础知识,这对做接口测试很重要。

例如:URL:https://i.cnblogs.com/EditPosts.aspx?opt=1,这个路径中要访问的网页是/EditPosts.aspx,i.cnblogs.com则是它的域名,?号后面指要提交的参数,具体是get还是post提交请大家用firebug抓取看就知道了,?号后如果有多个参数,参数与参数之间用“&”符号连接。2、数据库:我用的是MYSQL,需要自己实践的童鞋请自己在电脑上先安装好数据库。

3、接口自动化工具:Jemeter。工具安装请大家自己百度哈,(百度上一大堆)

4、工具准备好后,开始实战了:

先将安装好的数据库添加进jemeter,步骤如下:

1、先下载mysql的jdbc驱动,然后将jar包放置在/lib路径下。

《此步骤可以用另一种方式操作:由jemeter的测试计划去添加jdbc驱动的jar包》

 技术分享

2、新建一个线程组:定义好虚拟用户、延迟时间、循环次数。
3、新建JDBC Connection Configuration:定义好名称、Variable Name(绑定到数据库池的变量名)、数据库连接配置里的参数(Database URL、JDBC Driver class、Username、Password)。

 技术分享

 

注意:不同的数据库和JDBC驱动程序需要不同的JDBC配置,详细参考JDBC驱动程序文档。

 技术分享

4、新建JDBC Request:定义好名称、Variable Name(此变量名要和步骤3里的变量名一致)、输入SQL Query语句,其他保持默认即可。

 技术分享

如果SQL语句是插入语句,详见下图:

技术分享

5、添加断言:右键点击线程组---->添加--->断言---->响应断言。

 技术分享

6、新建一些监听器:

添加一个查看结果树:右键点击线程组---->添加--->监听器---->察看结果树。

下面是添加所有东东的列表:

 技术分享

 

 

数据库我们已经加入jemeter了,为什么要添加数据库呢?是因为我们在测试接口时会遇到删除接口类时,我们不能每次都手动往数据库里添加数据,再来测试,这就失去自动化的意义了,所有咱们先把数据库放在测试计划的最前面,因为Jemeter批量运行时是根据测试计划的先后顺序来执行的。

接下来,添加我们要测试的接口,先上一幅我已写好的接口:

技术分享

 接下来添加HTTP请求,添加请求要根据具体项目协议而定,思想是不变的。具体步骤如下:

1、添加线程组:

线程数:指设置虚拟用户数。

Ramp-Up Period(in second):指用户延迟几秒启动,如果设置为5,代表5秒后启动全部虚拟用户,计算下来:5个用户/5秒=1个用户/秒。

循环次数:指要循环几次这个线程组。

 技术分享

2、添加HTTP请求默认值:(这一步其实可以省略)

操作步骤:选择线程组,右键点击并在弹出的菜单中选择添加——>配置元件——>HTTP请求默认值。

在此界面唯一需要修改的地方是“服务器名称或IP”,输入IP,其他文本域保留默认值即可。

HTTP请求默认值元件并不是告诉Jmeter来发送HTTP请求,它仅仅定义这个HTTP请求所用的默认值。

3、添加HTTP请求:

操作步骤:选择线程组,右键点击并在弹出的菜单中选择添加——>Sampler——>HTTP请求。

不必要再重写“服务器名称或IP”,因为已经在HTTP请求默认值里设置了。

更改名称,写好路径。

 技术分享

4、添加监听器:

监听器的用途是:将所有的HTTP请求结果存储在一个文件中并显现出数据的可视模型。

操作步骤:选择线程组,右键点击并在弹出的菜单中选择添加——>监听器——>图形结果。

需要指定文件路径和输出文件名。

技术分享

如果有多个接口,可以重复HTTP请求的操作步骤添加接口。

接口添加好后,接下来就是批量运行,点击测试计划,如下图,记住一定要勾选红圈的地方,右键点击运行,即可批量运行,点击察看结果树里面,就可以看到所有运行的接口测试结果了:

技术分享

 

接口自动化实战