jmeter实现一次登录,多次业务请求(不同线程组间共享cookie和变量)

实现目的

  • 很多时候,在进行性能测试时,需要先登录,然后再对需求的事务进行相关性能测试,此时的登录操作,并不在本次性能测试的范围内,所以我们只需要登录一次,然后获取登录成功后的cookie等,并将cookie等鉴权的值,传给cookie管理器,供后续所有的业务请求使用,这样即可实现直接对需求的事务进行性能测试,并监控相关资源利用和程序性能指标。

脚本实现

  • 设置Http Cookie管理器,用于存储当前脚本的cookie信息,并传给后续的相关请求使用

  • 设置高斯随机定时器,用于产生随机等待时间

  • 设置初始化线程组setUp Thread Group,在所有其他线程组执行前,先执行,一般用于登录等操作,执行一次就好

  • 设置仅一次控制器,保证后续的请求在整个测试执行过程中只被执行一次

  • 编辑登录请求

  • 提取登录成功后的sid

  • 提取登录成功后的cookie

  • 将获取到的sid和cookie转成全局变量,以便供给http cookie管理器或者其他的线程组使用

  • 设置本次性能测试线程参数

  • 编辑本次性能测试的事务的相关请求,这里传入其他线程组的全局变量

  • 相关结果断言及性能指标监控

原文地址:https://www.cnblogs.com/jun-zi/p/12041262.html