51Testing软件测试论坛

标题: 集合点和关联什么时候用?怎么用? [打印本页]

作者: 水灵冰雪    时间: 2013-3-1 14:47
标题: 集合点和关联什么时候用?怎么用?
请大神帮忙一下,跪求真相?
作者: guoningiris    时间: 2013-3-4 10:21
我也是初学者,下面是我的理解,可以探讨一下,呵呵~
集合点:
顾名思义,需要将并发用户集合起来做某件事情的时候使用。
使用集合点可以控制在某一时间同时向服务器发送请求,这样是更纯粹的压力测试,不过在这之前要将并发用户数计算好。
举个例子:进入理发店,可能一天之中有100个人回去理发店,其中有人在烫头发,有人在洗头,有人在美甲,也有人正在来的路上。而若设置了集合点,100个人会先在理发店门口集合,集齐100人后同时踏进理发店,这时候是真正测试理发店性能的时候,看能否在客户不满意离开(线程超时)之前处理客户的需求。
集合点使用就是在脚本中,需要集合的动作前加 lr_rendezvous("together"); 当然,集合点要集合多少VUSER,以及超时时间等策略,都可以在controller中设置(Scenario-Rendezvous-policy);
作者: 水灵冰雪    时间: 2013-3-6 10:23
集合点用的时候多吗?一般都是用并发就可以了是吗?
作者: xinyuzxx    时间: 2013-3-26 16:30
本帖最后由 xinyuzxx 于 2013-3-26 16:44 编辑

我也在学用Loadrunner,下面是我的关于集合点和关联的理解:
集合点:就是设置一个地方,等满足条件的用户都到达这个点后,在执行下面的操作(这个条件在Controller中设置)。
关联:当提交的请求中有动态变化的信息时需要用关联。
集合点的例子2楼的朋友已经举过例子了,我就不再举例了。
下面我举个关联的例子
很多的网页在使用时都有sessionID(会话ID)和timestamp(时间戳)属性,每次用户在使用网页时所产生的sessionID和timestamp都是会发生变化的,自然录制时的sessionID和timestamp和回放或运行时的sessionID和timestamp肯定是不一样的,那么这个sessionID和timestamp就是我们需要做关联的内容。
做关联的目的是为了保证vuser提交的这些动态信息和服务器给用户的信息是一致的,这样在服务器端进行比较时才不会被服务器当成错误的信息,进而保证脚本运行的正确性。
常见的需要做关联的属性除了sessionID、timestamp外,还有sign(签名)等字段,如果对测试系统的开发信息有一定了解的话,找要做关联的地方会容易一些
作者: sheldonfly    时间: 2013-3-26 20:00
你在录制脚本的时候会录制到从服务器返回来的请求,当你再回放脚本的时候发现不过,大部分原因是没有设置关联。因为你在录制脚本的时候服务器会返回给你假定有个函数叫www他的值在第一次返回的时候为13,回放的时候服务器返回给你的值为15这两个值不同,导致脚本不过,说白了就是这个值是动态变化的,这时候我们就要用一个函数来获取这个动态值,来付给这个函数,这就是所谓的关联,不知道你能理解不?
作者: msnshow    时间: 2013-3-31 11:27
如楼上所讲了
作者: 水灵冰雪    时间: 2013-4-9 14:44
谢啦!似乎有点小懂啦!
作者: dominge    时间: 2013-7-16 22:45
录制Q自动登录时候,输入用户名,密码后登录后,回放脚本,显示密码错误,该怎么设置关联啊。




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