JMeter接口自动化测试

用JMeter做接口测试过程中,可以生成一个自动化接口测试线程,在该线程下添加多个不同的请求,注册接口请求、登录接口请求、充值请求等,单独配置各个接口的参数,可能存在相同参数在不同接口都要改动的情况,那么采用“用户定义的变量”能够自定义全局变量。

线程组添加 配置元件 ---- 用户定义的变量;

JMeter接口自动化测试_第1张图片

利用引用参数的方式,${mobilephone},将注册接口和登陆接口的手机号的参数变成一致的value。

JMeter接口自动化测试_第2张图片

JMeter接口自动化测试_第3张图片

JMeter接口自动化测试_第4张图片

点击运行测试之后,发现能够注册、登陆,但是无法充值,充值接口提醒重新登录。这其中是因为HTTP请求是无状态的,需要添加cookie配置。明确cookie和session的区别。

方法一:线程组添加cookie管理器,点击运行按钮,能够正常登陆充值;

JMeter接口自动化测试_第5张图片

方法二:指定的cookie;将cookie管理器复制粘贴到充值接口下,将全局cookie管理器diable。

JMeter接口自动化测试_第6张图片

获取cookie:运行之后,发现登陆接口的运行结果sampler result中信息头(response header)有一个参数Set cookie,在每次运行中cookie的值是不一样的,所以只能采用正则表达式来获取cookie。

获取cookie步骤:1、在登陆接口添加后置处理器 - 正则表达式提取器

JMeter接口自动化测试_第7张图片

2、设置正则表达式提取器的内容,将从信息头中set cookie对应的值里面的字符换成表达式(.*) - 贪婪匹配

JMeter接口自动化测试_第8张图片

JMeter接口自动化测试_第9张图片

3、可为线程组添加Debug sampler打印出参数,查看正则比配的参数是否正确;

4、配置充值接口下的cookie管理器;点击运行即可正常自动化测试充值接口;

JMeter接口自动化测试_第10张图片

通过方法一和方法二,能够正常配置测试接口所需的cookie。登录接口会产生cookie,如果设置全局的cookie管理器并两次登录,则后一次登录的cookie会覆盖掉之前的cookie。

连接数据库JDBC获取数据库中的数据并用于其他接口参数:

1、添加JDBC连接管理器与JDBC request,根据博客https://mp.csdn.net/postedit/81072615 提到的JDBC接口来配置mysql数据库;采用的语句中,count参数是全局参数变量,与奖项接口参数有关;相当于奖项接口执行后,通过语句从数据库中找到对应的新增数据的id.

JMeter接口自动化测试_第11张图片

JMeter接口自动化测试_第12张图片

2、将sql取得的数据通过正则表达式提取器获取;为JDBC request添加正则表达式提取器,配置好之后添加debug sampler进行验证;

JMeter接口自动化测试_第13张图片

3、若其他接口需要数据库中查询出的数值,则可以用${win_id}来代替。

你可能感兴趣的:(软件测试启程--JMeter)