这篇文章主要介绍了jmeter线程组传参原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
背景介绍:
使用jmeter做登录和搜索接口的测试:
登录接口请求头为:Content-Type: application/x-www-form-urlencoded; charset=UTF-8
搜索接口请求头为:Content-Type: application/json; charset=UTF-8
同时,搜索的请求头中需要用到登录接口返回值中的token值。
基于上述情况,在jmeter中新建了两个线程组,这时就需要考虑线程组之间的参数怎么传递,本博客中使用的只是其中的一种方法。
=================================================================================================================
操作步骤:
新建两个线程组,一个登录,一个搜索
登录线程组,HTTP请求后,增加一个正则表达式提取器
(登录接口token返回值为:"data":{"token":"b19d16a0-265d-42a7-88cc-54e6150159d3","maxInactiveInterval":0})
正则表达式内容为:
新增一个后置处理器,将token值存储:
后置处理器代码为:
String token = vars.get("token"); props.put("lg_token",token); log.info("***token****:"+token);
搜索线程组:
1、增加前置处理器,获取登录接口中存储的token值:
代码为:
String lg_token = props.get("lg_token"); vars.put("lg_token",lg_token); log.info("####lg_token###:"+lg_token);
2、新增HTTP信息头管理器,值为:
3、添加HTTP请求,正常输入请求地址和参数,运行即可
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍Jmeter参数化实现原理及过程解析,包括了Jmeter参数化实现原理及过程解析的使用技巧和注意事项,需要的朋友参考一下 背景: 在实际的测试工作中,我们经常需要对多组不同的输入数据,进行同样的测试操作步骤,以验证我们的软件的功能。这种测试方式在业界称为数据驱动测试,而在实际测试工作中,测试工具中实现不同数据输入的过程称为参数化设置。 jmeter提供多种参数化设置的方式,常用的有:
线程组顾名思义,线程组表示JMeter在测试期间将使用的线程组。 线程组元素是任何测试计划的起点。 线程组提供的控件允许: 设置线程数。 设置加速期。 设置执行测试的次数。 前面已在“添加/删除测试元素”部分中说明了在测试计划中添加线程组的步骤。 下图显示了线程组的控制面板部分。 线程组控制面板包括: 线程组名称。 线程数(您正在测试的用户数)。 加速时间(您希望允许线程组从0到3个用户的时间)。
本文向大家介绍Java多线程 线程组原理及实例详解,包括了Java多线程 线程组原理及实例详解的使用技巧和注意事项,需要的朋友参考一下 线程组 线程组可以批量管理线程和线程组对象。 一级关联 例子如下,建立一级关联。 输出结果如下 每隔三秒输出两个线程名称,符合预期。 线程组自动归组属性 输出结果如下 没有指定线程组,则归属到当前线程所属的组。 根线程组 运行结果 当前线程的线程组的父线程组是系统
本文向大家介绍Java多线程start()方法原理解析,包括了Java多线程start()方法原理解析的使用技巧和注意事项,需要的朋友参考一下 1、为什么启动线程不用run()方法而是使用start()方法 run()方法只是一个类中的普通方法,调用run方法跟调用普通方法一样 而start()是创建线程等一系列工作,然后自己调用run里面的任务内容。 验证代码: 结果: main Thread-
本文向大家介绍JAVA线程池原理实例详解,包括了JAVA线程池原理实例详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JAVA线程池原理。分享给大家供大家参考,具体如下: 线程池的优点 1、线程是稀缺资源,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以重复使用。 2、可以根据系统的承受能力,调整线程池中工作线程的数量,防止因为消耗过多内存导致服务器崩溃。 线程池的创建 co
本文向大家介绍java线程优先级原理详解,包括了java线程优先级原理详解的使用技巧和注意事项,需要的朋友参考一下 java 中的线程优先级的范围是1~10,默认的优先级是5。10最高。 MIN_PRIORITY 1 MAX_PRIORITY 10 NORM_PRIORITY 5 优先级高的获得cpu的几率更大些,不是优先级高的就先执行完,线程优先级随机特性 在java中,线程的优先级具有继承性,