热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

JMeter学习012JMeter配置元件之HTTPCookie管理器实现Cookie登录

前文我们讲过了若何获取登录后的Cookie信息,不知如何获取登录Cookie的朋友,敬请参阅我之前写的博文:Fiddler-005-获取C

 

 


前文我们讲过了若何获取登录后的 COOKIE 信息,不知如何获取登录 COOKIE 的朋友,敬请参阅我之前写的博文:Fiddler-005-获取 COOKIE 信息。参阅上篇文章,获取到 COOKIE 后,将 COOKIE 保存到文本文件中,例如 userCOOKIE.txt。
 
下面以购物App常用的收藏功能为例,讲述如何在 JMeter 中使用 COOKIE 进行登录态操作。具体的操作步骤如下所示:
 
 
 
第一步、录制查看收藏列表的 HTTP请求:
 
录制查看收藏列表的HTTP请求,只需启动 Fiddler、配置代理、执行查看收藏操作即可,在此不再赘述,谢谢!录制好查看收藏列表的HTTP请求后,脚本页面视图如下所示:
 


因此时我们没有登录,在脚本中也无对应的 COOKIE 存在,假如我们此时运行脚本,那么请求响应将会提示我们未登录,如下所示:
 


 
 
第二步、读取 COOKIE 配置文件
 
配置路径:【添加 / 配置元件 / CSV Data Set Config】,读取第一步获取的 COOKIE 参数文件中的数据。若不知如何配置,敬请参阅博文:JMeter学习-010-JMeter 配置元件实例之 - CSV Data Set Config 参数化配置,配置完成的读取配置如下所示:
 


 
 
第三步、添加 HTTP COOKIE管理器:
 
操作路径:【添加 / 配置元件 / HTTP COOKIE管理器】,打开 HTTP COOKIE管理器的配置页面,如下图所示:
 

1.名称:对该 COOKIE管理器的自定义概述
 2.注释:对该 COOKIE管理器的详细描述
 3.每次反复清除COOKIEs?:选择后,则每次线程组运行时,都会清除 COOKIE。PS:若是手动添加的COOKIE,则不会被清除。
 4.Implementation:履行的协议。
 5.COOKIE Policy:COOKIE的管理策略。有如下几种可选项:
 •compatibility:推荐选择此种策略。这种兼容性设计要求是适应尽可能多的不同的服务器,尽管不是完全按照标准来实现的。如果你遇到了解析 COOKIEs 的问题,你就可能要用到这一个规范。有太多的web站点是用CGI脚本去实现的,而导致只有将所有的 COOKIEs 都放入 Request header 才可以正常的工作。这种情况下最好设置 http.protocol.single-COOKIE-header 参数为 true。
 •rfc2109:是HttpClient使用的默认COOKIEs协议。
 •rfc2965:定义了版本2并且尝试去弥补在版本1中 COOKIE 的 RFC2109 标准的缺点。规定 RFC2965 最终取代 RFC2109 发送 RFC2965 标准 COOKIEs 的服务端,将会使用 Set-COOKIE2 header 添加到 Set-COOKIE Header 信心中,RFC2965 COOKIEs 是区分端口的。
 •ignoreCOOKIEs:此规格忽略所有 COOKIE。被用来防止 HttpClient 接受和发送的 COOKIE。
 •netscape:是最原始的 COOKIEs 规范,同时也是 RFC2109 的基础。尽管如此,还是在很多重要的方面与 RFC2109 不同,可能需要特定服务器才可以兼容。
 •default:默认。
 
 
 
第四步、参数化 HTTP COOKIE管理器:
 
利用第二步配置读取的数据,引用其名称,对上步中的 HTTP COOKIE管理器,实行参数化,配置完成的 HTTP COOKIE管理器如下所示:
 


 
 
第五步、添加 COOKIE 至 HTTP请求:
 
将上述配置的 HTTP COOKIE管理器,放到相应的 HTTP请求下即可,如下图所示:
 


 
 
第六步、执行脚本,查看结果:
 
我们通过 HTTP 请求的信息可以看出 HTTP COOKIE 是否正确添加至 HTTP请求,如下图所示:
 


脚本执行结果如下所示:
 


 
 
附录(一):
 

 

  1
  2
  3  
  4    
  5      
  6       false
  7       false
  8      
  9        
 10      

 11      
 12    

 13    
 14      
 15         ,
 16         UTF-8
 17         ./userCOOKIE.txt
 18         false
 19         true
 20         shareMode.all
 21         false
 22         appSource,appVersion,channelId,deviceId,districtid,userSkey,token,uid,version,wsid
 23      

 24      
 25      
 26         continue
 27        
 28           false
 29           1
 30        

 31         1
 32         1
 33         1419563153000
 34         1419563153000
 35         false
 36        
 37        
 38      

 39      
 40        
 41          
 42            
 43              
 44                 false
 45                 uid
 46                 ${uid}
 47                 =
 48                 true
 49              

 50              
 51                 false
 52                 page
 53                 0
 54                 =
 55                 true
 56              

 57              
 58                 false
 59                 exAppTag
 60                 2045191607
 61                 =
 62                 true
 63              

 64            

 65          

 66           mb.51buy.com
 67          
 68          
 69          
 70           http
 71           GB2312
 72           /json.php?mod=myfavor&act=get&appSource=android&appVersion=${appVersion}
 73           POST
 74           true
 75           false
 76           true
 77           false
 78           false
 79          
 80           从收藏列表中获取对应收藏商品的收藏 ID
 81        

 82        
 83          
 84            
 85              
 86                 Charset
 87                 UTF-8
 88              

 89              
 90                 Content-Type
 91                 application/x-www-form-urlencoded
 92              

 93              
 94                 Accept-Encoding
 95                 gzip
 96              

 97              
 98                 User-Agent
 99                 Dalvik/1.6.0 (Linux; U; Android 4.4.2; GT-I9502 Build/KOT49H)
100              

101            

102          
103          
104          
105            
106              
107                 ${appSource}
108                 .51buy.com
109                
110                 false
111                 0
112                 true
113                 true
114              

115              
116                 ${appVersion}
117                 .51buy.com
118                
119                 false
120                 0
121                 true
122                 true
123              

124              
125                 ${channelId}
126                 .51buy.com
127                
128                 false
129                 0
130                 true
131                 true
132              

133              
134                 ${deviceId}
135                 .51buy.com
136                
137                 false
138                 0
139                 true
140                 true
141              

142              
143                 ${districtid}
144                 .51buy.com
145                
146                 false
147                 0
148                 true
149                 true
150              

151              
152                 ${userSkey}
153                 .51buy.com
154                
155                 false
156                 0
157                 true
158                 true
159              

160              
161                 ${token}
162                 .51buy.com
163                
164                 false
165                 0
166                 true
167                 true
168              

169              
170                 ${uid}
171                 .51buy.com
172                
173                 false
174                 0
175                 true
176                 true
177              

178              
179                 ${version}
180                 .51buy.com
181                
182                 false
183                 0
184                 true
185                 true
186              

187              
188                 ${wsid}
189                 .51buy.com
190                
191                 false
192                 0
193                 true
194                 true
195              

196            

197             true
198          

199          
200        

201      

202      
203         false
204        
205           saveConfig
206          
207            
208             true
209             true
210             true
211            
212             true
213             true
214             true
215             true
216             false
217             true
218             true
219             false
220             false
221             false
222             false
223             false
224             false
225             false
226             false
227             0
228             true
229             true
230          

231        

232        
233      

234      
235    

236  

237


 
 
至此, JMeter学习-012-JMeter 配置元件之-HTTP COOKIE管理器-实现 COOKIE 登录 顺利完结,希望此文能够给初学 JMeter 的您一份参考。
 
最后,非常感谢亲的驻足,希望此文能对亲有所帮助。热烈欢迎亲一起探讨,共同进步。非常感谢! ^_^
 
 

我本渺小,但山峰,我一次次绝顶!


PS:若有错误,敬请告知,不胜感激!
Copyright @范丰平 版权所有,如需转载请标明本文原始链接出处,严禁商业用途! 我的个人博客链接地址:http://www.cnblogs.com/fengpingfan


推荐阅读
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • Servlet多用户登录时HttpSession会话信息覆盖问题的解决方案
    本文讨论了在Servlet多用户登录时可能出现的HttpSession会话信息覆盖问题,并提供了解决方案。通过分析JSESSIONID的作用机制和编码方式,我们可以得出每个HttpSession对象都是通过客户端发送的唯一JSESSIONID来识别的,因此无需担心会话信息被覆盖的问题。需要注意的是,本文讨论的是多个客户端级别上的多用户登录,而非同一个浏览器级别上的多用户登录。 ... [详细]
  • .NetCoreWebApi生成Swagger接口文档的使用方法
    本文介绍了使用.NetCoreWebApi生成Swagger接口文档的方法,并详细说明了Swagger的定义和功能。通过使用Swagger,可以实现接口和服务的可视化,方便测试人员进行接口测试。同时,还提供了Github链接和具体的步骤,包括创建WebApi工程、引入swagger的包、配置XML文档文件和跨域处理。通过本文,读者可以了解到如何使用Swagger生成接口文档,并加深对Swagger的理解。 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • 阿,里,云,物,联网,net,core,客户端,czgl,aliiotclient, ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • 关键词:Golang, Cookie, 跟踪位置, net/http/cookiejar, package main, golang.org/x/net/publicsuffix, io/ioutil, log, net/http, net/http/cookiejar ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • 解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法
    本文介绍了解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法,包括检查location配置是否正确、pass_proxy是否需要加“/”等。同时,还介绍了修改nginx的error.log日志级别为debug,以便查看详细日志信息。 ... [详细]
  • 单页面应用 VS 多页面应用的区别和适用场景
    本文主要介绍了单页面应用(SPA)和多页面应用(MPA)的区别和适用场景。单页面应用只有一个主页面,所有内容都包含在主页面中,页面切换快但需要做相关的调优;多页面应用有多个独立的页面,每个页面都要加载相关资源,页面切换慢但适用于对SEO要求较高的应用。文章还提到了两者在资源加载、过渡动画、路由模式和数据传递方面的差异。 ... [详细]
  • Apache Shiro 身份验证绕过漏洞 (CVE202011989) 详细解析及防范措施
    本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ... [详细]
  • Allegro总结:1.防焊层(SolderMask):又称绿油层,PCB非布线层,用于制成丝网印板,将不需要焊接的地方涂上防焊剂.在防焊层上预留的焊盘大小要比实际的焊盘大一些,其差值一般 ... [详细]
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • 微软评估和规划(MAP)的工具包介绍及应用实验手册
    本文介绍了微软评估和规划(MAP)的工具包,该工具包是一个无代理工具,旨在简化和精简通过网络范围内的自动发现和评估IT基础设施在多个方案规划进程。工具包支持库存和使用用于SQL Server和Windows Server迁移评估,以及评估服务器的信息最广泛使用微软的技术。此外,工具包还提供了服务器虚拟化方案,以帮助识别未被充分利用的资源和硬件需要成功巩固服务器使用微软的Hyper - V技术规格。 ... [详细]
  • 本文介绍了Hive常用命令及其用途,包括列出数据表、显示表字段信息、进入数据库、执行select操作、导出数据到csv文件等。同时还涉及了在AndroidManifest.xml中获取meta-data的value值的方法。 ... [详细]
author-avatar
45仰望易_332
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有