51Testing软件测试论坛

标题: 多Vuser“并发”下载文件,少数正确、大多数有错儿!(不并发都正确) [打印本页]

作者: Progress    时间: 2006-4-24 10:11
标题: 多Vuser“并发”下载文件,少数正确、大多数有错儿!(不并发都正确)
用LoadRunner测试文件下载:
(1)VuGen执行脚本,下载文件,所得完全正确;
(2)Controller设置大量Vuser间隔执行该脚本,所得文件也正确;
(3)但是,Controller设置多Vuser并发下载文件(添置集合点),得到的文件,大多数错误,少数正确!

所要下载的文件是内容为1234567890的.txt文件。
下载所得正确文件,其日志信息是:
......
Action.c(..): t=198045ms: 10-byte response body for "http://......" (RelFrameId=1)
Action.c(..):     1234567890
......
Action.c(..): Notify: Saving Parameter "body = 1234567890"        [MsgId: MMSG-13798]
Action.c(..): web_submit_data("xxxxxx.asp") was successful, 10 body bytes, 222 header bytes [MsgId: MMSG-26386]
Action.c(..): Notify: Parameter Substitution: parameter "body" = "1234567890" [MsgId: MMSG-13992]
......

下载所得错误文件,其日志信息是:
......
Action.c(..): Warning -26376: Requested parameter "body" found in 3 different pages/frames. Use web_reg_save_param with more restrictive LB/RB/RelFrameId [MsgId: MWAR-26376]
Action.c(..): Warning -26375: Parameter "body" saved from "RelFrameId=1" (URL="......") [MsgId: MWAR-26375]
Action.c(..): web_submit_data("xxxxxx.asp") highest severity level was "warning", 2642 body bytes, 656 header bytes [MsgId: MMSG-26388]
Action.c(..): Notify: Parameter Substitution: parameter "body" = "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">\r\n<HTML><HEAD><TITLE>......</TITLE>......</BODY></HTML>\r\n1234567890" [MsgId: MMSG-13992]
......

下载得到正确文件,内容为1234567890;
但大多都得到了错误内容为<!DOC......

请帮忙分析一下儿可能原因!
怎么会时而对、时而错呢?

另,脚本中的web_reg_save_param设置为:
web_reg_save_param("body","LB=","RB=","search=Body",LAST);

请各位指教!Thanks in advance!
作者: xingcyx    时间: 2006-4-24 10:27
从你描述的情况看,多用户间隔执行下载是成功的,说明脚本都是没问题的。
那么添置集合点后就表示很多用户在同一时间点对同一个文件进行下载,这个时候可能就会导致很多资源的共享冲突,所以会出错,这是正常的,也是你要做性能负载测试的目的。
作者: Progress    时间: 2006-4-24 16:15
标题: 多谢
还是有疑问?
下载的文件只有10bytes.现在测试情况是7个Vuser并发下载都正确,再多就有错了!
疑问:200个Vuser并发下载该文件,Controller中并不报错,都Passed。而下载正确的仅有7个!
现在系统效能是支持多少并发用户数量?
200个?
还是7个呢?
但为何Controller不报错?
作者: xingcyx    时间: 2006-4-24 16:27
首先你要搞清楚LR的工作原理,它在运行的时候,是模拟很多客户端对服务器产生负载压力的一个过程,并且记录服务器端对此的响应情况,如果你没有添加检查点(checkpoint),它并不检查操作的实际结果是否正确,而是只要服务器端对请求有了响应,它就认为是passed,但是你测试的既然是下载文件,如果下载到一个错误的文件,或者压根就没有真正下载下来,这个对于应用来说,显然是一个错误,应该认为是通不过的。
总之一句话,目前市面上的所有性能测试工具,对于系统应用级别上的出错检查机制都是比较弱的,需要你自己去检查和判断。
作者: Progress    时间: 2006-4-25 19:11
标题: 先别沉
200个Vuser下载都Passed!
要说是系统效能只能承受7个用户并发下载,是否差距太大?
请各位再斟酌!
3Q
作者: xingcyx    时间: 2006-4-26 08:53
我上面不是说过了吗?你不能光以是否passed来判断,LR的vuser出现fail的情况并不多。




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