之前介绍过JMeter测试的日常应用。但对于登录后提交数据等操作说的还不够详细。按照常规教程的说法,为JMeter添加cookies管理器,即可以自动管理cookie,实现用户的状态管理。但经过我的使用,发现有的站点可以,有的站点不行。录制完脚本,发现有的站点在cookies管理器中有内容,而大部分没有。经过比较,发现cookies管理器只能自动记录那些持久cookie,而对于类似sessionid这类会话cookie是不记录的。那么完成这样的任务,就需要我们手工来添加cookie了。
我采用的是使用浏览器跟踪插件,比如firebug,针对提交数据动作发出的请求进行跟踪,找到其发送的cookie,并把它手工填入到cookies管理器中。这样就可以提交数据了。见下图。
先从firebug中获取到cookie,
填入到cookies管理器中:
采用这种方式即可完成有状态的用户动作。但这样是有个问题的,这种会话cookie是一定时间限制的,超时就不再有效了。所以下次再运行这个测试计划,还需要重新修正。如果把登录动作也录进去,再使用一些处理器去自动获取这些cookie数据,理论上也是可以的,有时间尝试一下。
时间: 2024-10-06 18:04:06