Jmeter参数化、断言及接口关联(二)

本文详细介绍了JMeter在接口测试中的应用,涵盖了cookie管理器、参数化(用户定义变量、用户参数、CSV数据文件设置、函数)、断言(响应断言、JSON断言、持续时间断言、XPath断言)和接口关联(正则表达式提取器、XPath提取器、JSON提取器)等关键功能。通过实例演示了如何设置和使用这些功能,帮助读者更好地理解和掌握JMeter在接口测试中的实际操作。
摘要由CSDN通过智能技术生成

目录

1、cookie管理器

 2、JMeter参数化

2.1、用户定义变量

2.2、用户参数

2.3、CSV数据文件设置

2.4、函数(_counter)

3、Jmeter断言

3.1、响应断言

3.2、JSON断言

3.3、持续时间断言

​3.4、xpath断言

4、Jmeter关联

4.1、正则表达式提取器

4.1.1、查看正则表达式提取器中的变量

4.2、XPath提取器

4.3、JSON提取器

5、跨线程组传参-BeanShell取样器

​ 6、JMeter录制脚本     


1、cookie管理器

        cookie管理器专门用来管理客户端的cookie信息,一般用于需要登录的场景保持与服务器的会话,如果不设置cookie管理器,则无法在jmeter中保持会话。

        添加方式:线程组--》添加--》配置元件--》cookie管理器,cookie管理器一般不需要专门设置,添加了就可以了

以mms医药管理系统为例子:

        登录之后,服务器给浏览器发送了一个cookie,后续的接口在发送请求时需要携带这个cookie,如果你没有携带这个cookie,那么服务器就认为你没登录,把你重定向到登录界面

登录接口:

        请求方法:post

        请求urlhttp://192.168.47.130:8080/mms/Login/loginUser

        请求头:content-Type: application/x-www-form-urlencoded; charset=UTF-8

        请求参数:username: admin

                          password: 1234

登录后会自动发起一个获取登录用户名的请求

        请求方法:get

         请求url: http://192.168.47.130:8080/mms/Login/GetLoginName

如果不设置cookie管理器

        登录请求

         登录后请求

察看结果树结果

        在该线程组下设置察看结果树之后,启动线程组,察看接口请求结果

        可以查看到获取登录名这个接口,认为你没有登录系统,设置了重定向,查看第二个HTTP请求--GetLoginName时,查看响应体直接是回到了登录页面,让你去登录

设置cookie管理器之后察看结果树结果

        设置cookie非常简单,只要点击线程组---》配置元件--》HTTP Cookie管理器添加上就行,不用任何操作,再次启动线程组,可以看到在获取登录名的接口中返回了json数据,没有在重定向

 2、JMeter参数化

把测试数据组织起来,用不同的测试数据调用相同的测试方法

本质:使用参数的方式来替代脚本中的固定测试数据

实现方式:

  • 定义变量(最基础)

  • 文件定义的方式(所有测试数据都固定的情况下)

  • 数据库的方式(灵活)

  • 函数的方式(灵活)

2.1、用户定义变量

作用:定义全局变量

位置:测试计划--》线程组---》配置元件---》用户定义的变量

练习:

操作步骤:

  • 添加线程组

  • 添加用户定义的变量

  • 添加HTTP请求,在请求中引用用户定义的变量,格式为${变量名}

  • 添加察看结果树

用户自定义变量如下:

 在HTTP请求中的调用:

2.2、用户参数

作用:针对同一组参数,当不同用户来访问时,可以获取到不同的值

位置:测试计划--》线程组--》前置处理器--》用户参数

练习

请求:百度一下,你就知道

要求:第一个用户请求附带参数:name=“张三”&age=28;第二个用户请求附带参数:name=”李四“&age=30

操作步骤

1、添加线程组

2、添加用户参数

 

3、添加请求

4、添加察看结果树

运行之后,点击察看结果树---》点击请求--》点击Request Body可以看到请求的url,生成的俩个请求,请求参数不同

使用“用户参数化”的步骤?

1、添加线程组,设置线程数为n(表示模拟的用户数)

2、添加用户参数

  • 第一列添加多个变量名

  • 后续每一列为一组用户数据

3、添加HTTP请求,引用定义的变量名。格式:${变量名}

4、添加察看结果树

2.3、CSV数据文件设置

作用:让不同的用户在多次循环时,可以取到不同的值

位置:测试计划--》线程组--》配置元件--》CSV数据文件设置

思考:性能测试时,有多个用户登录,登录后循环添加商品,每次添加的商品参数不能相同,该怎么做?练习

请求:https://wwws.baidu.com

要求:循环请求3次我,每次请求时附带参数username,password,code的值不同

操作步骤:

1、定义CSV

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值