前文我们讲过了若何获取登录后的 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
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212 true
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
至此, JMeter学习-012-JMeter 配置元件之-HTTP COOKIE管理器-实现 COOKIE 登录 顺利完结,希望此文能够给初学 JMeter 的您一份参考。
最后,非常感谢亲的驻足,希望此文能对亲有所帮助。热烈欢迎亲一起探讨,共同进步。非常感谢! ^_^
我本渺小,但山峰,我一次次绝顶!
PS:若有错误,敬请告知,不胜感激!
Copyright @范丰平 版权所有,如需转载请标明本文原始链接出处,严禁商业用途! 我的个人博客链接地址:http://www.cnblogs.com/fengpingfan