51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

楼主: redsong
打印 上一主题 下一主题

[求助] loadrunner压asp.net网站 遇到问题三个 求解决方法[愿意支付RMB800元][已失效]

[复制链接]

该用户从未签到

21#
发表于 2006-7-3 20:06:08 | 只看该作者
VIEWSTATE的值在每次出现页面时都会不同,因此在用LoadRunner针对这种类型的应用录制脚本时,就需要进行关联 (Correlation) 操作。一般来说,使用web_reg_save_param函数就可以进行关联,例如:

   web_reg_save_param("MyViewState","LB=\"__VIEWSTATE\" value=\"","RB=\"",LAST);

特别要注意的有两点:
1、LoadRunner在某些情况下会对部分VIEWSTATE进行关联,但LR的自动关联在大部分情况下都不那么可靠,因此,建议自行检查一遍自动关联后的脚本,或者直接用手工关联方式处理脚本;
2、如果 ASP.NET 页面上的控件太多,VIEWSTAT的值 (字符串) 会变得很长,而缺省情况下,一个web参数的大小是256 bytes,因此,在 web_reg_save_param 函数之前需要用 web_set_max_html_param_len 函数将参数长度放大。
回复 支持 反对

使用道具 举报

该用户从未签到

22#
发表于 2006-7-3 20:07:32 | 只看该作者
第一次看到人来悬赏阿!哈哈!
第一个问题:你描述的很差!我希望你能把日志全部进行输出(server端的所有返回信息)然后把Controller报出来的错误日志也给我看一下
第二个问题:很大程度上是你参数设置可能有问题
第三个问题:这个比较简单,弹出窗口式javascripts的行为,我们做检查点时不考虑客户端行为,但是客户端行为也是根据server反馈值进行判断输出阿!这样想不就非常简单了吗?你可以将这个值作为检查点的值不就行了!
当然你可以到我的论坛上发帖!呵呵!(www.kernzhang.com)
回复 支持 反对

使用道具 举报

该用户从未签到

23#
发表于 2006-7-3 20:13:27 | 只看该作者
我觉得viewstate不管是从理论还是从实际上来说,都是不用关联的
我以前也听说过有人用这个做关联,问他是没下文了,不知道zee斑竹有什么根据
回复 支持 反对

使用道具 举报

该用户从未签到

24#
发表于 2006-7-3 20:18:45 | 只看该作者
我不知道楼上从哪里得到这种理论!呵呵!viewstate本身就是.net生成出来的动态垃圾值,你如果不关联,那只能死翘撬,但这跟出题人不断的判断长短没有什么意义!这些值都是动态产生出来的!何必关他的长短!只要正确捕获下来就行,所以第一个问题出题人解决思路有些问题!嘿嘿!
回复 支持 反对

使用道具 举报

该用户从未签到

25#
发表于 2006-7-3 20:30:31 | 只看该作者
viewstate保存客户端控件状态,服务器本身是不会验证这个的,为什么要关联呢

我用lr8.0的做过asp.net网站的所有脚本都没有需要关联这个的地方,我以前看过有人说这个需要关联,好象是关河吧,问他他也没说清楚.
回复 支持 反对

使用道具 举报

该用户从未签到

26#
发表于 2006-7-3 20:32:58 | 只看该作者
能不能先解释一下为什么我不关联却从来没有出过错呢,洗耳恭听
回复 支持 反对

使用道具 举报

该用户从未签到

27#
发表于 2006-7-3 21:44:25 | 只看该作者
ilovejolly兄说不关联,那把你的脚本和LOG帖出来看看。有没有公网的应用,我也来操作一下。

[ 本帖最后由 Zee 于 2006-7-4 09:11 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

28#
发表于 2006-7-3 22:00:09 | 只看该作者
害!如果关河连这个问题都回答不了你!他就没资格出书了!viewstate到底做什么用我给你两个网页看看!我想你看懂了就应该知道为什么做关联了!当然也有可能不做!你的网页啥也不变的话!呵呵
http://www.chinaaspx.com/archive/asp/21255.htm
http://www.chinaaspx.com/archive/dotnet/10207.htm
回复 支持 反对

使用道具 举报

该用户从未签到

29#
 楼主| 发表于 2006-7-4 08:58:39 | 只看该作者
从20楼开始逐一看大家的帖子:

回20楼版主老兄:
现在是判断不出来压的时候报错,是否和ViewState有关。如果没关当然最好,接着在loadrunner里边找原因。

回21楼版主老兄:
1 可能 你提供的方法正确,但是究竟应该如何做的。这里大家始终提到了一个词是“关联”,谁能给我解释一下到底什么是关联。“关联”是“参数化”吗? 录制完脚本之后,我只对登录时候的用户名进行了参数化, 文本文件user.dat中是从user1-user10000共10000个用户。除此之外的其他数据都没有进行参数化,我现在也搞不清楚你们说的“关联” 是否就是参数化的意思。
2 可以看12楼 已经设置成 “web_set_max_html_param_len("1200000"); ”

回22楼版主老兄(哇,今天版主好多哦)
1 随后就贴上
2 是可能有问题,现在想知道的是解决方法,
3 不是很明白,是网页中的[a href="1.htm" target="_blank"]test[/a] 这种方式的链接,不知道和javascript有什么联系。

回24楼版主老兄
“这些值都是动态产生出来的!何必关他的长短!”
我也尝试不管viewstate的长短,现在看起来的结果是,如果viewstate短,则登录的时候直接转到报错页面去。如果viewstate长,则正常通过。所以,管和不管,不是我说了算的啊。是压的结果(log)给了我这样的状况。


感谢所有关注此贴的兄弟,此贴继续有效。
回复 支持 反对

使用道具 举报

该用户从未签到

30#
发表于 2006-7-4 09:13:49 | 只看该作者
redsong,去看看关联的资料。以及在什么时候需要关联。那你就知道你的这种情况需要不需要。
回复 支持 反对

使用道具 举报

该用户从未签到

31#
发表于 2006-7-4 09:14:11 | 只看该作者
“关联”和“参数化”是两个不同的概念。简单说,关联就是服务器端对于某一个字段每次返回的一个变化的值,由于录制的时候和回放的时候这个值不一样,因此需要在脚本中做关联,而参数化只是把你需要输入的值通过参数变化。不知道我这样说清楚没有,我这个是通俗化的说法,你要看更严谨的解释,就去看看手册和帮助,这个又不复杂,而且 是必须掌握的。
回复 支持 反对

使用道具 举报

该用户从未签到

32#
发表于 2006-7-4 09:16:03 | 只看该作者
是关联的问题,viewstate是动态生成的,上回测一个系统也是viewstate太长,无法自动关联,必须手工关联,且要设置保存的最大字符,你先看看精华版里关于怎样做手工关联的文章,理解一下什么是关联,相信这个问题可以解决。我第一次做关联也是不懂,花了两天时间在网上问别人:)
回复 支持 反对

使用道具 举报

该用户从未签到

33#
发表于 2006-7-4 09:32:19 | 只看该作者
结论呢,结论在哪里???

谁赢得了千元大奖啊 ,哈哈哈
回复 支持 反对

使用道具 举报

该用户从未签到

34#
 楼主| 发表于 2006-7-4 09:37:00 | 只看该作者
在回22楼版主兄弟的第一个问题:
日志我已经贴到1楼了,可以供你参考一下。既然你说我帖子说的不清楚。那我在重复说一遍,希望这次能说清楚。

先说viewtate的两种状态,一种看起来很多,我称之为长的,一种看起来很少,我称之为短的
---------------------

<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTUzMzI1MTYxN2QYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgoFP2N0bDAwJEhlYWRDb250ZW50JERlZmF1bHRIZWFkZXIxJERlZmF1bHRMb2dpbjEkTG9naW5JbWFnZUJ1dHRvbgVIY3RsMDAkTWFpbkNvbnRlbnQkRGVmYXVsdDEkaW5xdWlyeTEkMjIyYzMwYTktNzU3Ni00MzA2LTk3ZTYtZGY0MTkzMGQ4NDViBUhjdGwwMCRNYWluQ29udGVudCREZWZhdWx0MSRpbnF1aXJ5MSRiOWE5NzBhYy0wYjUyLTQ5ZjEtOTlmMC05YTEyOTA4ZTc1MWEFSGN0bDAwJE1haW5Db250ZW50JERlZmF1bHQxJGlucXVpcnkxJDFmNTZhMjQ3LWZkZTktNGRjMC1hMDc4LTgyMjViY2RmMjJmNAVIY3RsMDAkTWFpbkNvbnRlbnQkRGVmYXVsdDEkaW5xdWlyeTEkMDI1MzVkYTctYjQ5NC00Mzk5LTk3NmMtMDBmMTczNTZhMWI5BUhjdGwwMCRNYWluQ29udGVudCREZWZhdWx0MSRpbnF1aXJ5MSQ1MjdjZDY4Ni04YjZmLTRjZjgtYTE2ZS1lNDc3NWJjOGY1ZmUFSGN0bDAwJE1haW5Db250ZW50JERlZmF1bHQxJGlucXVpcnkxJDY0MTIyYTQyLTI0YTItNDMyMC1iNjNiLTE1ODk5ZjFmNzk4YwVIY3RsMDAkTWFpbkNvbnRlbnQkRGVmYXVsdDEkaW5xdWlyeTEkNjRiYWYzZTUtNDE0Ny00ZWY0LTgyMzAtNjE5N2QxM2M2MjNhBUhjdGwwMCRNYWluQ29udGVudCREZWZhdWx0MSRpbnF1aXJ5MSQyNzVlNzE2YS0xMjAzLTQ2NzktYmUwMi04M2U3ODhmZWFlOTcFSGN0bDAwJE1haW5Db250ZW50JERlZmF1bHQxJGlucXVpcnkxJGU5ZmNlYjNjLTJhOTgtNGQ3OS04OTJjLThhN2ExMDQ3YjM3YjDuiOnVXoWOEqr1oTiU/RZceH7O" />
---------------------

---------------------

<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTUzMzI1MTYxN2QYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgEFP2N0bDAwJEhlYWRDb250ZW50JERlZmF1bHRIZWFkZXIxJERlZmF1bHRMb2dpbjEkTG9naW5JbWFnZUJ1dHRvbqEwBCUQGl7HaTuz68uaD59YwVyR" />
---------------------

手工操作:
1  IE打开首页,是长的,刷新一次是长的,再刷新一次还是长的,这时候用户登录,是正常的。
2  IE打开首页,按住F5刷新(多次快速刷新),停止,这时候看是短的,用户登录,正常

LoadRunner Controller操作:
5个用户 经常会有1-2个错的,看日志,都是短的。

希望这次能说明白。
感谢你的关注和解答。

[ 本帖最后由 redsong 于 2006-7-4 09:41 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

35#
发表于 2006-7-4 11:54:50 | 只看该作者
经过昨晚和今早和楼主的交流,包括看过楼主的脚本以及运行日志,我自己也录制了脚本,得出以下几个结论:
1、该问题应与关联无关,因为楼主的脚本里已经对viewstate做了正确的关联,而且在vugen中回放成功,并且在controller中的2个用户,3个用户也都成功,只有到了5个用户的时候才会有个别用户出错,另外两个可疑字段sheetId和
__EVENTVALIDATION,经与开发人员确认,并且自已也多次录制,证实这两个字段只是在前台产生,并不发送到后台校验,因此无需做关联。
2、关于为什么5个用户的时候会导致个别用户出错,我也百思不得其解。由于无法在现场看到现象,因此我也只能做到这个程度了。

总之一句话,我搞不定,各位高人请继续。。。
回复 支持 反对

使用道具 举报

该用户从未签到

36#
 楼主| 发表于 2006-7-4 12:31:08 | 只看该作者
感谢xingcyx兄弟两天时间在QQ上热心的指导。 可惜xingcyx和我没在一个城市,不能当面指导我操作。
xingcyx兄弟和我已经互留了电话号码,做人要厚道,xingcyx兄来来北京的时候知会一声,请吃大餐,当面答谢。

此贴继续有效。
回复 支持 反对

使用道具 举报

该用户从未签到

37#
发表于 2006-7-4 12:48:29 | 只看该作者
关河好像这段时间刚好要到北京,直接请他帮忙好了,现场指导,呵呵
回复 支持 反对

使用道具 举报

该用户从未签到

38#
发表于 2006-7-4 13:26:36 | 只看该作者
ReadSong:
看不到你的脚本,无法知道具体的原因。根据你的描述可以给你一些建议。
第一个问题:有两种错误1.Server出错,这个我也不知道如何解决。2.脚本错误:LR在录NET时会出现录制的结果与IE中的结果不一致,这种情况在回放时无法发现,你需要使用网络监视器察看IE的请求是否与LR录制的相同。特别注意头信息。

第二个问题:参数使用的方式是“迭代”,这样当你在多次回放时会不停的更换用户名,需要改成一次。同时注意Session对于Server端的影响。

第三个问题:弹出的页面也是一个请求,在录制选择录制方式为单独方式,这样就可以察到是哪一个请求在弹出页面,然后使用判断就可以了。

如果你能把脚本和Crotonl的设置与贴上来会让大家更清楚的知道你在那里出了问题。
回复 支持 反对

使用道具 举报

该用户从未签到

39#
 楼主| 发表于 2006-7-4 13:32:10 | 只看该作者
回38楼 脚本贴上去了(在四楼),controller压完之后,正确,错误的日志也贴上去了(在1楼)。

关于2:我想说的是,实际应用中,不会出现同一个用户,反复登录,退出系统的。肯定是多个用户在相对集中的时间登录进入系统。之所以这样设置,就是想更贴近实际的模拟真实情况。所以我并不认为这是错误。

非常感谢你的关注和解答。
回复 支持 反对

使用道具 举报

该用户从未签到

40#
 楼主| 发表于 2006-7-4 13:32:38 | 只看该作者
原帖由 xiao_jie98 于 2006-7-4 12:48 发表
关河好像这段时间刚好要到北京,直接请他帮忙好了,现场指导,呵呵


怎么联系这位高人呢?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-9-22 08:34 , Processed in 0.089961 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表