|
最后一贴.还有一个小时就失效了。让我把这个帖子完成吧。
首先感谢所有关注和回帖的兄弟们,感谢你们对问题的认真回答,感谢你们独到的分析,感谢你们在QQ上耽误自己下班的时间陪着我解决问题,其中的兄弟们包括 xingcyx shongwei fish_yy suchboy ilovejolly Zee kernzhang xiao_jie98 AlanStone lbzhong ldneliza yuezhiyin Koffer swordsman lotus
接着来说问题:
第一个问题:
根据1楼 34楼 41楼的叙述,问题的情形大家都清楚了,不在重复,多数兄弟都判断是关联的问题,就是我没有对viewstate设置好手动关联。在发贴之前我还不知道什么是关联,不过现在已经知道了。关联就是服务器给浏览器端传过来的数据,如果有不同的话,loadrunner的虚拟用户,可以用把这些不同的值返回给服务器。
但是我在41楼贴出来的内容 和 4楼贴出的脚本中已经包含的内容:
----------------------------
web_reg_save_param("Siebel_Analytic_ViewState2",
"LB/IC=ViewState\" value=\"",
"RB/IC=\"",
"Ord=1",
"RelFrameId=1",
"Search=Body",
LAST);
"Name=__VIEWSTATE", "Value={Siebel_Analytic_ViewState2}", ENDITEM,
----------------------------
足够说明:第一个问题和“关联”没有关系。
所以在41楼的最后两句,问题被精简成:
-----------------------
IE手工操作的时候 如果刷新出来viewstate的内容少,则能够正常登录
loadrunner压的时候 如果vuser(模仿IE)刷新出来的viewstate内容少,则不能够正常登录
-----------------------
之后公司的一个作技术的同事(互联网上非常出名哦)一句话给了我一个思路
按照他的思路,才有了47楼的不完美解决方法,内容如下:
-----------------------------------
第一个问题暂时解决鸟 过程如下。
脚本中:
web_reg_save_param("Siebel_Analytic_ViewState2",
"LB/IC=ViewState\" value=\"",
"RB/IC=\"",
"Ord=1",
"RelFrameId=1",
"Search=Body",
LAST);
全部注释掉
同时
"Name=__VIEWSTATE", "Value={Siebel_Analytic_ViewState2}", ENDITEM,
替换为
"Name=__VIEWSTATE", "Value=/wEPDwUKMTUzMzI1MTYxN2QYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgoFP2N0bDAwJEhlYWRDb250ZW50JERlZmF1bHRIZWFkZXIxJERlZmF1bHRMb2dpbjEkTG9naW5JbWFnZUJ1dHRvbgVIY3RsMDAkTWFpbkNvbnRlbnQkRGVmYXVsdDEkaW5xdWlyeTEkMjIyYzMwYTktNzU3Ni00MzA2LTk3ZTYtZGY0MTkzMGQ4NDViBUhjdGwwMCRNYWluQ29udGVudCREZWZhdWx0MSRpbnF1aXJ5MSRiOWE5NzBhYy0wYjUyLTQ5ZjEtOTlmMC05YTEyOTA4ZTc1MWEFSGN0bDAwJE1haW5Db250ZW50JERlZmF1bHQxJGlucXVpcnkxJDFmNTZhMjQ3LWZkZTktNGRjMC1hMDc4LTgyMjViY2RmMjJmNAVIY3RsMDAkTWFpbkNvbnRlbnQkRGVmYXVsdDEkaW5xdWlyeTEkMDI1MzVkYTctYjQ5NC00Mzk5LTk3NmMtMDBmMTczNTZhMWI5BUhjdGwwMCRNYWluQ29udGVudCREZWZhdWx0MSRpbnF1aXJ5MSQ1MjdjZDY4Ni04YjZmLTRjZjgtYTE2ZS1lNDc3NWJjOGY1ZmUFSGN0bDAwJE1haW5Db250ZW50JERlZmF1bHQxJGlucXVpcnkxJDY0MTIyYTQyLTI0YTItNDMyMC1iNjNiLTE1ODk5ZjFmNzk4YwVIY3RsMDAkTWFpbkNvbnRlbnQkRGVmYXVsdDEkaW5xdWlyeTEkNjRiYWYzZTUtNDE0Ny00ZWY0LTgyMzAtNjE5N2QxM2M2MjNhBUhjdGwwMCRNYWluQ29udGVudCREZWZhdWx0MSRpbnF1aXJ5MSQyNzVlNzE2YS0xMjAzLTQ2NzktYmUwMi04M2U3ODhmZWFlOTcFSGN0bDAwJE1haW5Db250ZW50JERlZmF1bHQxJGlucXVpcnkxJGU5ZmNlYjNjLTJhOTgtNGQ3OS04OTJjLThhN2ExMDQ3YjM3YjDuiOnVXoWOEqr1oTiU/RZceH7O", ENDITEM,
兄弟们看明白了吧,相当于我的IE在欺骗服务器, 就是说不管在刷新完成页面后,服务器给了浏览器什么值,都不管,就直接提交回去这串多的,正确的值。
-----------------------------------
用了这个办法,其实不是解决了问题,而是避开了问题。在没有找到更好的解决方法之前,也只能如此。
在这插几句别的,我不知道其他的公司如何,在我所在的公司,我自己崇尚的是“各司其职,各负其责”。但是往往某些时候,测试和研发是一个对立的方面,总会出现互相推卸责任的状况。就这个问题来说,最早的时候,似乎责任全部在我,因为手工操作,没有任何错误的程序在Loadrnner中报错。不过现在看起来,两方面都有责任。
研发:搞清楚为什么快速刷新IE之后查看源文件ViewState会变短。
测试:搞清楚为什么ViewState变短之后,手工操作正常,Loadrunner中不正常。
[ 本帖最后由 redsong 于 2006-7-7 17:15 编辑 ] |
|