51Testing软件测试论坛

标题: 理解think time [打印本页]

作者: tanbofish    时间: 2007-9-5 22:07
标题: 理解think time
测试响应时间大小时,think time是该忽略还是该保留呢.....有没有官方的建议啊...

首先我们讨论一下,think time是什么?think time 包括什么?

我个人是这样认为的:包括两个动作之间的等待时间,即操作时间和程序反应的时间!!!!!其实是包括两个时间的!!!!

现在我们再来谈谈响应时间:

如果包括think time的话,就把用户操作的时间也包括进去了,这样响应时间就会变大,而实际程序的响应时间并没有这么大!!!!

如果忽略响应时间的话,那把程序反应的那段时间也忽略了,响应时间变的很小,但是就不真实了!!!!!

我的想法是这样的:

我首先录一遍有加事务和集合点的脚本1(在添加事务名和集合点名时会生产think time) ,然后再快速录一遍无加事务和集合点的脚本2(这个脚本里只有程序响应的时间), 接下来,我们脚本2里的think time拷到脚本1里面,把脚本1多余的think time删除掉!!!!
接下来不忽略think time 进行测试....

我个人觉得这样是比较正确的!!不知大家的看法是怎么样的!!!
我这种方法只能是think time理解为包括两种时间值!!!!

不知道我对think time的理解是否正确!!!

(分析报表里的过滤器可以过滤掉think  time,有点奇怪的是,它只虑掉了最小值和最大值,平均值还是跟之前一样大.是不是汉化的原因.汉化真的很害人,我又得重新装系统了)
作者: hyq828    时间: 2007-9-6 08:05
think_time是等待一定的时间,是模拟用户操作步骤的延迟时间。有点类似于QTP的Wait命令。
lr_think_time(10);//其中think_time的单位是秒,等待10秒。
如果你在回放的时候,不需要用到think_time,你可以在设置忽略think_time,那样回放的过程中就不会考虑think_time的时间。具体设置在Virtual User Generator/Vuser/Run-timer Setting下 选择Think Time ,再选择Ignore think time。
think_time不包括2个时间,只是2个动作之间的等待时间。
还有就是你的观点在添加事务名和集合点时会产生think time ,是由于你在录脚本的时候,去按添加事务和集合点的按钮本身就花费的一定的时间,所以LR会模拟你花费的时间,产生think time。你如果要加集合点或者事务可以考虑在录完脚本后再加。
作者: tanbofish    时间: 2007-9-6 09:17
标题: 回复 #2 hyq828 的帖子
我知道think time是2个动作之间的等待时间,但这个等待时间又包括些什么呢?

就算我在录制的过程中不设任何事务和集合点,录制出来的脚本也有think time,这个think time在测试“响应时间大小”时(不谈所谓的压力,纯粹只谈响应时间),是否需忽略呢(因为在网上找的信息中,有人说应忽略,忽略后才是真实的响应时间;也有人说,不应该忽略,忽略后不真实)。

不知有没有一点儿官方意见!!!
作者: suoyi    时间: 2007-9-6 09:54
我看到过一种说法,如果忽略think time在运行多用户多次迭代场景时,将会加大测试的压力;如果保留think time将会更贴近真实用户的使用情况。
个人感觉think time在脚本中的去留,还是跟据测试的重点来设置的吧。
作者: tanbofish    时间: 2007-9-6 12:15
标题: 回复 #4 suoyi 的帖子
为什么都喜欢说模棱两可的话呢。。。

我现在问的应该很清楚了。。是响应时间。。。你们的公司都没有要求测过响应时间吗?
作者: tanbofish    时间: 2007-9-6 12:16
只考虑“打开”或“登陆”那一刹间花费的时间。。只考试程序反应的时间,不考虑用户操作过程中浪费的时间!!!!
作者: 天使之泪    时间: 2007-9-6 17:00
这个没有绝对的,
作者: tanbofish    时间: 2007-9-9 22:37
唉!!!!!!!!!!
作者: msnshow    时间: 2007-9-10 16:18
没办法只测到应用程序的响应时间的
作者: RobinGe    时间: 2007-9-10 16:33
你要是真想测试响应时间可以抓包看,看看从你发包到结束收包的时间
呵呵,这个就是个理想情况,就像client的不同配置
打开一个pdf在关闭,机器好的可能就需要5秒,破机器可能接收以后5秒都不能打开,用户更不可能关闭了
作者: ppent    时间: 2007-9-10 16:54
没有绝对,看测试目标。如果是基于用户体验的测试,加;如果做压力测试,不加。
作者: just_cici    时间: 2007-9-10 17:09
结果时间-thinktime=响应时间,不是吗?

楼上说的没错,thinktime是模拟用户操作的时间间隔,如果去掉thinktime的性能测试,对服务器的压力是最大的,thinktime是不是需要是根据测试情况不同而取舍的。
不知道LZ能否明白
作者: qiguojie    时间: 2007-9-10 17:20
忽略thinktime的压力,我称其为并发(就是运行多少用户,就是多少用户的并发)
实际上一般thinktime在取值的时候都是要分析用户的行为,这跟不同的系统和不同类的用户都有关系
作者: msnshow    时间: 2010-7-16 14:02
真正的并发要用集合点
作者: msnshow    时间: 2010-7-16 21:13
thinktime主要是为了模拟用户真实操作才使用的
作者: crazymartin    时间: 2010-7-21 11:23
如果是做压力测试,不加
如果只是为了模拟真实场景,加




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