51Testing软件测试论坛

标题: loadrunner脚本运行时出现500错误 [打印本页]

作者: cafard-haibin    时间: 2008-11-12 11:05
标题: loadrunner脚本运行时出现500错误
在运行脚本时到如下脚本时出现错误:
【错误信息】
Action.c(213): Error -26612: HTTP Status-Code=500 (Internal Server Error) for "http://192.168.0.x/etest/CommerceLearning/CM_Training/Attendance/TrainingAttenderDetail.aspx?attID=552"         
[MsgId: MERR-26612]
Action.c(213): web_submit_data("TrainingAttenderDetail.aspx_3") highest severity level was "ERROR", 7365 body bytes, 275 header bytes          [MsgId: MMSG-26388]

【部分代码】
  1. web_submit_data("TrainingAttenderDetail.aspx_3",
  2.                 "Action=http://192.168.0.x/etest/CommerceLearning/CM_Training/Attendance/TrainingAttenderDetail.aspx?attID=552",
  3.                 "Method=POST",
  4.                 "TargetFrame=",
  5.                 "RecContentType=text/html",
  6.                 "Referer=http://192.168.0.x/etest/CommerceLearning/CM_Training/Attendance/TrainingAttenderDetail.aspx?attID=552",
  7.                 "Snapshot=t15.inf",
  8.                 "Mode=HTML",
  9.                 ITEMDATA,
  10.                 "Name=__EVENTTARGET", "Value=paperList$DataGrids$ctl02$lbtnTrainingContent", ENDITEM,
  11.                 "Name=__EVENTARGUMENT", "Value=", ENDITEM,
  12.                 "Name=__VIEWSTATE", "Value={Siebel_Analytic_ViewState14}", ENDITEM,
  13.                 "Name=PageHeader_Frame1$CurrentPath1$textLength", "Value=271", ENDITEM,
  14.                 "Name=__EVENTVALIDATION", "Value=/wEWDwL6v9GPDALTmaHEBgLwjoj0AgL02tCyAgLFro7wDQKqxfDaAwKP3NLFCQL08rSwDwLZiZebBQK+oPmFCwLTyrjEAwK44ZqvCQL7gM6aAgLgl7CFCAKU2t+xBga2L2XR8w9r/lEvn+nH0I23Urnv", ENDITEM,
  15.                 EXTRARES,
  16.                 "Url=/etest/CommerceLearning/RS_Style/System/default.css", "Referer=http://192.168.0.x/etest/CommerceLearning/CM_Training/Attendance/TrainingAttenderDetail.aspx?attID=552", ENDITEM,
  17.                 "Url=/etest/SC/Script/ClientFunction.js", "Referer=http://192.168.0.xetest/CommerceLearning/CM_Training/Attendance/TrainingAttenderDetail.aspx?attID=552", ENDITEM,
  18.                 "Url=/etest/SC/Script/proxyScript.js", "Referer=http://192.168.0.x/etest/CommerceLearning/CM_Training/Attendance/TrainingAttenderDetail.aspx?attID=552", ENDITEM,
  19.                 "Url=/etest/CommerceLearning/RS_Style/System/images/index/logo_5.gif", "Referer=http://192.168.0.x/etest/CommerceLearning/CM_Training/Attendance/TrainingAttenderDetail.aspx?attID=552", ENDITEM,
  20.                 LAST);
复制代码
【已经尝试过的解决方法】
论坛上有人提到过类型问题,我也试着改变了录制不同的录制方式。但问题还存在。并且我也查看了出现错误时iis的日志也未找到问题的原因。希望得到大家帮助。

[ 本帖最后由 cafard-haibin 于 2008-11-12 11:08 编辑 ]
作者: archonwang    时间: 2008-11-12 11:09
猜测可能的情况:
http://192.168.0.x/etest/Commerc ... tail.aspx?attID=552

attID可能是个变化的值?

请楼主录制两遍该脚本,使用相同的操作方式,对比下脚本看看。
作者: cafard-haibin    时间: 2008-11-12 11:25
1:谢谢版主的及时回复,我按照你说的比较了前后录制的两个脚本。那个id值相同。这块功能是这样的,就是不同人可以打开那个页面。
2:脚本刚录制好后运行正常,但对用户名参数化以后就出现我说描述的错误了,错误代码行就出现我提供的代码上。
作者: iori    时间: 2008-11-12 11:33
查看是否需要关联
作者: 026300    时间: 2008-11-12 11:34
我最天刚解决了一个类似的问题,最后检查的结果是程序提交的参数有了变化,你试试看你的是不是这个原因
作者: cafard-haibin    时间: 2008-11-13 09:35
经过别人帮助发现问题出现在上面代码中的:
  1. "Name=__VIEWSTATE", "Value={Siebel_Analytic_ViewState14}", ENDITEM,
复制代码
语句中,因为我对这个值没有参数化过,可为什么成了参数化的样子呢?原来是LD做了自动关联。在loadrunner中去掉录制时自动关联。然后再录制,运行时就没有出现原来的错误。但是我的疑问有来了。
(1)在.net大家都用viewstate来保存页面状态,但这个状态的值一般都是很长的。比如我录制的值就有十几行。而且都是这样的:“/wEPDwULLTEzODAzNzU2NDYPZBYCAgEPZBYCAgEPDxYCHgRUZXh0BZoC5rWP6KeI5Zmo57G75Z6LID0gVW5rbm93bjxicj7mtY/op4jlmajlkI3lrZcgPSBVbmtub3duPGJyPua1j+iniOWZqOeJiOacrOWPtyA9IDAuMDxicj7lubPlj7AgPSBVbmtub3duPGJyPuaUr+aMgSDmoYbmnrbpm4YgPSBGYWxzZTxicj7mlK/mjIEgQ29va2llcyA9IFRydWU8YnI+5pSv5oyBIFZCIFNjcmlwdCA9IEZhbHNlPGJyPuaUr+aMgSBKYXZhU2NyaXB0ID0gRmFsc2U8YnI+5pSv5oyBIEphdmEgQXBwbGV0cyA9IEZhbHNlPGJyPuaUr+aMgSBBY3RpdmVYIENvbnRyb2xzID0gRmFsc2U8YnI+ZGRknZuXh8YWOYDFfV6JguM1X+2Bi+8=”大家可以用ViewState解码器ViewState Decoder (2.2)进行查看。那么LD为什么要对这个参数进行自动关联?
(2)这个参数大家可以看到很到,如果服务器上的防火墙设置规则中对POST请求值有最大尺寸限制,可能就出现请求被拒绝情况。那我们在LD中如何处理这个值?

[ 本帖最后由 cafard-haibin 于 2008-11-13 09:36 编辑 ]
作者: archonwang    时间: 2008-11-13 11:58
第一个问题,我感觉可能是楼主勾选了对应的lr选项。可能各自的lr配置不同,所应用的关联选项也不一定相同。

第二个问题,我一般都是直接关闭防火墙,或是在防火墙上设置不限制。测试完毕后,恢复防火墙设置即可。lr上可以通过参数代替长字符,但是在网络传输时,参数实际上不起任何作用。
作者: david.wang    时间: 2008-12-22 11:32
今天也遇到了同样的问题,发现把登录放在action中,其他的操作也放在action中,回放就没有问题。同时设置并发用户时,有些并发用户就可以successed.

关于Siebel问题,是因为每个用户登录后,系统都会分配一个唯一的Siebel,并用该Siebel值来操作其他的事物。如果如果用同一个用户的话,就会有不同的Siebel,导致前后Siebel不同。
作者: wanglingcs    时间: 2008-12-29 15:19
遇到和楼主一样的问题,那位来解答一下啊
作者: medoraemon    时间: 2008-12-30 11:05
9# 的帅帅...问题不是已经解决了么...你还真后知后觉




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2