关于测试场景的两个时间概念thinktime和pacing

上一篇 / 下一篇  2009-11-10 13:19:59 / 个人分类:测试心得感悟

这两个概念,是用loadrunner做性能测试时需要考虑的时间指标,含义分别是:

thinktime:用户思考时间,模拟真实用户在操作过程中的等待时间。

pacing:两次迭代之间的间隔时间。

近日在某测试论坛看到有人探讨这两个时间指标的设置,自己也颇有感想,摘录如下:

thinktime 和pacing值的含义并不难理解,设置这两个值的目的,是为了让测试场景更逼真地模拟用户真实操作,难的是 如何确定它们的值。个人觉得,需要请教有丰富的用户行为研究经验的人才可以。但在实际情况中,需求人员的精力大多在调研功能需求方面,对这样的问题,他们很多时候是不会去了解和考虑的。不过曾经听说象微软,google这样的大公司,是专门设有用户体验研究部门,专门研究用户行为,这样的机构会有大量有说服力的数据。

有的项目实例分析,用的是假设的字眼,比如假设用户浏览网页用1秒,从而设置thinktime=1。但我认为,不应该把thinktime和pacing的值定为一个固定值,这样没有代表性,有的用户看得慢些,有的用户看得快些,有的用户急性子,有的用户慢性子,成千上万的用户都有着千差万别的操作习惯。我的实际做法是,把thinktime和pacing值均设置为一个范围,在脚本执行一次的过程中,用户停顿的时间在一个范围内,比如1-10秒(最小值针对动作快反应快的人,最大值针对动作最反应慢的人)。

而pacing值,如何设置,就不是一两句可以说清楚了。这个值直接影响对服务器施加压力的大小,pacing值越长,相对来说压力就越小,它相当于一个虚拟用户执行完某项业务操作后休息停顿的时间,期间该虚拟用户对服务器不构成压力。在一些网站项目实例中,可能要求被测系统能够支撑每分钟几千个用户请求,那就先计算每分钟虚拟用户能完成多少次迭代,发送多少次请求,从而衡量出所需的虚拟用户数。

Runtime—setting中设置的迭代次数,只在 Run until complete 运行模式下起作用。如果是real-life schedule模式,是由Loadrunner根据你设置的duration时间,结合每次迭代部分的耗时,来决定迭代次数。


TAG:

wuwoyiran的个人空间 引用 删除 wuwoyiran   /   2011-07-25 15:44:50
-1
yantong的个人空间 引用 删除 yantong   /   2009-11-30 21:19:44
原帖由luoye_09于2009-11-21 16:16:13发表
如果在你的测试环境不能完全匹配真实环境的情况下,深究thinktime和pacing没有多大的意思。如果一个系统.


有道理。不过在压力比较大的情况下系统承受不了,这样的测试结果比较遭到开发人员的不服,因为测试环境跟真实环境脱节,他们就认为不会出现这样的问题。
我爱测试 引用 删除 luoye_09   /   2009-11-21 16:16:13
如果在你的测试环境不能完全匹配真实环境的情况下,深究thinktime和pacing没有多大的意思。如果一个系统在恶劣的条件下能生存下来,那么它在好的条件下存活率会高很多
 

评分:0

我来说两句

日历

« 2024-04-26  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 29422
  • 日志数: 32
  • 图片数: 1
  • 书签数: 8
  • 建立时间: 2008-07-02
  • 更新时间: 2010-02-09

RSS订阅

Open Toolbar