loadrunner录制获取不到token

用loadrunner 12录制一个目前正在开发的一个项目的web页面的登录脚本,回放时一直提示以下错误信息:​

1、Token was wrong ,The server encountered an internal error​

2、Error -26612: HTTP Status-Code=500​

3、web_custom_request("login") highest severity level was "ERROR",2531 body bytes,204 header btyes​

看到500错误,就想到是代码问题,经过与开发确认后,请求头中的token,cookie都没有问题。由于我对脚本中怎样处理token、cookie等也不熟悉,所以就录制另一个我们正在使用的系统的登录脚本,和我的脚本进行对比。发现正在使用的系统录制后的脚本能获取到cookie值,并会自动添加web_add_cookie()函数,并进行自动关联;正在开发的系统脚本中怎么都找不到cookie相关的内容。所以可以确定录制时并没有获取到服务器响应的token或cookie。​

然后去看录制配置信息时无意中解决了这个问题。具体方法如下:​

1、进入Recording Options > HTTP Properties > Advanced的页面​

2、打你Recording schemes中的Headers按钮,进入Headers弹出页面​

3、选择“Record headers not in list",在下面的列表框中勾选“Csrf-Token”(对照你的HTTP请求头,将请求头中有的参数这里都勾选上。)​

4、单击OK​

设置好后重新去录制脚本,你会发现新录制的脚本中多了一个函数web_add_header("x-token","具体的值"),在回放脚本前先选中token值单击鼠标右键选择“Correlate Selection”进行关联,然后回放就成功了。​

说明:如果不进行这些设置,录制完后直接在请求脚本前面添加web_add_header("x-token","具体的值")函数应该也可以。​类似的cookie,session也可以这样处理。

转载:http://blog.sina.com.cn/s/blog_14b788a260102vhcb.html

原文地址:https://www.cnblogs.com/zyp1/p/5730376.html