51Testing软件测试论坛

标题: 关于lr_think_time函数的问题 [打印本页]

作者: macco    时间: 2008-5-8 18:08
标题: 关于lr_think_time函数的问题
测试公司软件中某一模块的性能状况,正常情况下从主界面进入该模块的时间应为3-8秒钟。录制完脚本后运行(user数为1):
      "Runtime settings"中
       "Ignore think time"时,测试数据显示进入该模块仅为0.78秒
       "As recorded"时,测试数据显示进入该模块需要19.78秒

检查脚本时发现:该transaction中有两条lr_think_time,分别为lr_think_time(9);lr_think_time(10)
搞不清楚这两条lr_think_time是如何产生的,是否应该手动去掉这两条lr_think_time?
同时请问以上现象如何解决才能得到正常的性能数据?  

谢谢!
作者: demit1    时间: 2008-5-8 21:27
lr_think_time,你录制脚本时在页面上停留时的思考时间。。。
作者: aks5201314    时间: 2008-5-8 23:11
lr_think_time表示你进行操作时各步骤之间的间隔时间,如果你把测试的部分设为事务,那就把思考时间去掉.事务中一般不要包含思考时间,只关注整个事务所消耗的时间就可以了.
作者: macco    时间: 2008-5-9 10:20
感谢2楼、3楼的解答
但该transaction的start为点击该模块入口,end为完全弹出模块界面,而这两条lr_think_tim恰恰是在加载界面程序的过程中,这是怎么回事?目测该过程绝对不会少于3秒钟且超过8秒钟,但测试结果要么时间太长,要么太短。哪位大侠能帮忙解释一下!多谢!
作者: maihua258    时间: 2008-5-9 10:33
我平时会把思考时间改小,或者直接将思考时间移至事务之外
作者: ppzhang    时间: 2008-5-9 11:34
标题: 这个很正常啊,有什么不对吗
lr_think_time函数是lr录制时候自动生成的.测试的时候有think time自然是程序响应时间+think time=0.78+9+10,不用think time就是0.78啦.摸块的响应时间又不是你看到程序执行完毕的时间.0.78秒这个结果应该正常,下一步就是多用户并发看看有问题么
作者: hongyun0703    时间: 2008-5-9 14:36
标题: 回复 1# 的帖子
我也觉得你的模块加载有问题,才0.78秒,可以看一下日志,是不是有些东东没有加载完。所以想办法判断一下,因为有的时候内容没有加载完,事务并不会报错(这个我最头痛)。
作者: macco    时间: 2008-5-9 15:02
6楼的意思是这个9秒、10秒的think_time是模块响应时,后台程序运行时的等待时间?所以0.78秒和19.78秒这两个时间都是正确的?
作者: msnshow    时间: 2008-5-10 17:24
楼主你把6楼的意思理解错了
作者: cf_inper    时间: 2008-5-11 22:13
在录制脚本的时候,lodrunner是记录客户端和服务器端的交互信息的,如果在事务开始和事务结束之间没有人为的思考的话,在脚本里却出现了lr_think_time(*)的话,那说明在录制脚本的时候,存在非客户端和服务器端的交互(譬如:访问本机信息)。
作者: macco    时间: 2008-5-13 11:24
谢谢10楼的解答。请问,该如何处理脚本中的lr_think_time,才不会影响到测试结果
作者: cf_inper    时间: 2008-5-13 23:17
建议分段测试,将录制下来的lr_think_time的前后分别作为一个事务来统计。
最主要的是和开发人员把这个情况说清楚就行了。
作者: liangjz    时间: 2008-5-14 00:51
有2种思路

1) lr_think_time(随机值 )
2) runtime setting中 配置pacing,每个迭代为多少秒

,本质上模拟用户发送请求的频率,只要真实反应用户行为即可
作者: macco    时间: 2008-5-14 16:18
明白了,非常感谢诸位的帮助
多谢




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