当前位置: 首页 > news >正文

jmeter如何将上一个请求的结果作为下一个请求的参数

目录

1、简介

2、用途

3、下载、简单应用

4、如何将上一个请求的结果作为下一个请求的参数


1、简介

在JMeter中,可以通过使用变量来将上一个请求的结果作为下一个请求的参数传递。

ApacheJMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试但后来扩展到其他测试领域。它可以用于测试静态和动态资源例如静态文件、Java小服务程序、CGI脚本、Java对象、数据库,FTP服务器,等等。JMeter可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。

Apachejmeter可以用于对静态的和动态的资源(文件,Servlet,Perl脚本,java对象,数据库和查询,FTP服务器等等)的性能进行测试。它可以用于对服务器,网络或对象模拟繁重的负载来测试它们的强度或分析不同压力类型下的整体性能。你可以使用它做性能的图形分析或在大并发负载测试你的服务器/脚本/对象。

2、用途

  1. 能够对HTTP和FTP服务器进行压力和性能测试,也可以对任何数据库进行同样的测试(通过JDBC)。

  2. 完全的可移植性和100%纯java。

  3. 完全Swing和轻量组件支持(预编译的JAR使用javax.swing.*)包。

  4. 完全多线程框架允许通过多个线程并发取样和通过单独的线程组对不同的功能同时取样。

  5. 精心的GUI设计允许快速操作和更精确的计时。

  6. 缓存和离线分析/回放测试结果。

3、下载、简单应用

下载、简单应用可参照:http://www.cnblogs.com/0201zcr/p/5046193.html

4、如何将上一个请求的结果作为下一个请求的参数

在压力测试的时候,经常要将几个流程串联起来才能将程序测试通过。如:我现在用户首先要登录,获得我登录的凭证(tokenId),之后我的请求其他的资源的时候需要带上这个凭证。才能识别你是否是合法的用户。

1)创建一个线程租

2)创建一个获取凭证的请求

3)创建后置处理器

JMeterGUI视图中右击该采样器打开右键菜单->添加->后置处理器->正则表达式提取器,打开"正则表达式提取器"会话页面并编辑其内容如下:

后置处理器是当这个请求返回后要做得事情,我这里是要从返回的内容中将我们要的tokenId获取出来。这里使用“正则表达式提取器”,用正则表达式,将我们要的内容获取出来。

4)正则表达式提取器配置

  • 引用名称是下个请求将要引用到的变量名;

  • 正则表达式是提取你想要内容的正则表达式,小括号()表示提取,也就是说对于你想要提取的内容需要用它括起来;

  • 模板是使用提取到的第几个值。因为可能有多个值匹配,所以要使用模板。从1开始匹配,依次类推。这里只有一个,所以填写$1$即可;

  • 匹配数字表示如何取值。0代表随机取值,1代表全部取值。这里只有一个,填1即可;

  • 缺省值表示参数没有取到值的话,默认给它的值。一般不填。

这个请求返回的数据如下:

{"message":"success","statusCode":200,"registerDay":"20","tokenId":"bf1017bc1bb495ae31764b306a3422885f5"}

我们现在要获取的是上面这个json字符串中tokenId的值,即

bf1017bc1bb495ae31764b306a3422885f5。

5)添加下一个请求

在这个请求中,我们要将上面的tokenId作为一个参数一并发送。

同上2)添加一个http请求(线程租右键——》添加——》Sampler——》HTTP请求)

6)添加查看结果树

7)执行后,即可通过”查看结果树“查询

 作为一位过来人也是希望大家少走一些弯路,希望能对你带来帮助。(WEB自动化测试、app自动化测试、接口自动化测试、持续集成、自动化测试开发、大厂面试真题、简历模板等等),相信能使你更好的进步!

留【自动化测试】即可【自动化测试交流】:574737577(备注ccc)icon-default.png?t=N4P3http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=_IjHegeJ1FQnPeEKrMSmI4m8d-jOK2vN&authKey=QNcmDg0w07hxmEQGYswEgLBvrgH2VarqHkIDjZHQg2LOd4OtWxrw4pjErW9M5Gkc&noverify=0&group_code=574737577

 

 

http://www.lryc.cn/news/93271.html

相关文章:

  • JAVA如何学习爬虫呢?
  • 距离保护原理
  • 从微观世界的RST包文视角助力企业网络应用故障排查和优化
  • 企业微信开发,简单测试。
  • element日期选择设置默认时间el-date-picker
  • AB32VG:SDK_AB53XX_V061(3)IO口复用功能的补充资料
  • UnityVR--组件10--UGUI简单介绍
  • k8s 探针
  • 【爬虫】4.4 Scrapy 爬取网站数据
  • PureComponent和Component的区别和底层处理机制
  • python3 爬虫相关学习9:BeautifulSoup 官方文档学习
  • 物联网Lora模块从入门到精通(九)Flash的读取与存储--结题
  • STM32MP157_PRO开发板的第一个驱动程序
  • 你“被”全链路了么?全链路压测实践之理论
  • 基于Tensorflow+SDD+Python人脸口罩识别系统(深度学习)含全部工程源码及模型+视频演示+图片数据集
  • abc200 D 鸽巢原理
  • QT day1 (图形界面设计)
  • JS逆向系列之猿人学爬虫第9题-动态cookie2
  • Java ~ Reference ~ FinalizerHistogram【总结】
  • 【MySQL】一文带你了解SQL
  • python基础学习3【NumPy矩阵与通用函数【矩阵相乘+平方+广播机制+转置】+ save、load、sort、repeat、unique、鸢尾花1】
  • 【Spring学习之更简单的读取和存储Bean对象】教会你使用五大类注解和方法注解去存储 Bean 对象
  • 微客云原生淘宝客APP小程序系统如何定制
  • QT CTK插件开发(六) 多对一插件
  • 【Spring Boot整合MyBatis教程】
  • ThinkPHP3.2.3通过局域网手机访问项目
  • 2306C++虚继承
  • 使用oracle遇到问题笔记
  • 我和老刘又被搞惨了
  • DDD--基本概念