[原创] 使用 jMeter 登录 Wordpress

  前段时间做了个 Wordpress 插件,需要进行压力测试,看看使用该插件后对 Wordpress 的影响。对于不登录 Wordpress 的情况,测试插件的影响是很简单的,在 jMeter 中简单设置下 HTTP Request 就可以了。不过,还需要测试登录 Wordpress 后,了解插件对其性能的影响。按道理,这应该也不是什么难的问题,因为之前我也做过很多使用 jMeter 测试登录系统的情况,不过这次却遇到了问题。

  测试环境:日语 Wordpress,jMeter Version 2.7.1, Wordpress Version 3.4.2

  首先,找到登录页提交的地址及所需参数,如下:
[Your Domain]/wp-login.php,提交方式 POST
所需参数:
log:[Login id]
pwd:[Your login password]
wp-submit:ログイン
redirect_to:[Your Domain]/wp-admin/
testcookie:1
并且添加了 HTTP Cookie Manager

  我原以为有了这些就可以登录了,结果我错了。登录失败。

  于是我上网找了好久好久,都没有什么线索,于是我决定还是自己来吧!

  一次偶然的手动登录时,我想到了些东西:会不会是 jMeter 的 Cookie Manager 有问题啊?是不是少了些 Cookie?于是我重新对比了手动登录后涉及的 Cookie 与使用 jMeter 登录后的差别,结果还真发现了问题。

  手动登录时,Cookie 中会有类似如下的信息:
Name:
[color=red][b]wordpress_fda39958cfe3c3e4894f548ca952b0a1[/b][/color]
Value:
[color=red][b]admin|1351669594|e6ffe9655e811ee27868d4e05f67da5f[/b][/color]
Domain:
[Your Domain]
Path:
[Your Domain]/wp-admin

  问题就出在这,请大家注意上面红色的问题,自动登录时,请求返回的 Cookie 缺少上面这条内容,导致无法登录。

  所以我的解决方案是,首先手动登录 Wordpress,此时抓取上面的 Cookie,并且上述信息添加到 jMeter 的 HTTP Cookie Manager 中。然后运行脚本,bingo! 好用了。

  有了上述的 Cookie,使用 jMeter 再访问其它的 Wordpress blog 页面,就是模拟在登录状态下的访问情况了。

FYI:关于为什么非要加上上述 Cookie 值才能模拟登录情况,我到现在都不是很明白。希望有高人路过时,可以指点下。或者提供一个更好的解决方案。

[b][color=red]特别鸣谢[/color][/b]
  在如下文章 [url]http://smilejay.com/2013/04/login-wordpress-with-jmeter/[/url] 中,关于 Cookie 没有被添加的原因的解释,里面写的相当的清楚,请大家参见其中的修改方法,修改 jMeter 的设置即可。再次感谢作者提出的解决方案。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值