51Testing软件测试论坛

标题: Lr中虚拟用户和事务间的关系 [打印本页]

作者: aprincess    时间: 2009-7-8 17:09
标题: Lr中虚拟用户和事务间的关系
把展现登陆页面放在init中,登陆操作放到了Action里面(并且把登陆操作设置为login事务,不设集合点),退出放在end里面。
如果设置迭代次数为1,忽略思考时间,回放时,只需10秒。
现在布置场景,如果设置10个虚拟用户,每秒加一个虚拟用户,持续运行2分钟,最后每秒退出一个虚拟用户。
假设最后事务login通过的是1000,失败的为0.

问题是:1.在这个场景中,系统一共登陆多少用户?是1000个吗?
        2.如何看待10个虚拟用户和这1000个事务的关系?
        3.1000个事务都成功,代表系统可以支持1000个用户同时登陆吗?
作者: talang_408    时间: 2009-7-8 23:42
应该就是10个用户吧,1000个事务,可以说是1000笔交易吧。
一个用户不只产生了一个事务。
作者: aprincess    时间: 2009-7-9 10:13
拿一个vuser来说,因为action中包含用户的登陆操作,所以Druation时间内,会有多个用户登陆。
到底该如何理解虚拟用户和事务成功数啊?请高手指点。
作者: mr.bee    时间: 2009-7-10 09:20
1.在这个场景中,系统一共登陆多少用户?是1000个吗?
可以这样说

2.如何看待10个虚拟用户和这1000个事务的关系?
就是10个虚拟用户在不注销退出的情况下进行了反复的登录,合计进行了1000次登录(因为:init->action 2min ->end)

3.1000个事务都成功,代表系统可以支持1000个用户同时登陆吗?
不可以
作者: xwd0423    时间: 2009-7-10 11:55
标题: 回复 1# 的帖子
1.在这个场景中,系统一共登陆多少用户?是1000个吗?
    从你的描述中看,是1000个。
2.如何看待10个虚拟用户和这1000个事务的关系?
    10个vuser和这1000个事务的关系,要看你运行时选择的是线程还是进程。 如果是默认运行的话,就是线程,那么他俩的关系就体现在处理速度上。如果你的服务器就支持2分钟,1000个用户登陆,那么也许一个用户在运行2分钟后,也会完成1000个登陆的事务。但是如果你的服务器很强大,处理速度很快,那么当100个用户操作2分钟时,也许会完成10万个登陆事务。(以上都是我个人的理解,仅供参考。)
3.1000个事务都成功,代表系统可以支持1000个用户同时登陆吗?
     这个理解很明显是错误的。你是用10个vuser去执行,如果你设置集合点的话,最多可以说你的系统支持10个用户同时登陆。 从你的测试结果上看,只能说,你的系统每秒可以支持1000/120=8.333个用户。从这个结果上看,你的系统支持不了1000个用户同时登陆。
作者: neusoft_testing    时间: 2009-7-10 15:16
没怎么弄明白,版主能说详细点吗?
作者: ermine    时间: 2009-7-10 17:50
如果只考虑持续过程,平均一下,就是10个用户进行1000个事务,1个用户在两分钟内进行了100个事务。
等同与你打开了一个IE,登录到系统,然后不退出,再打开一个IE,进行登录。

有1000个事务,只能证明系统能够支持1000人同时在线,不能保证1000个人并发登录。
作者: allen52177    时间: 2009-7-11 10:14
1.在这个场景中,系统一共登陆多少用户?是1000个吗?
不可以这样说。有的系统是根据IP登陆的数量来计算的,用以个IP登陆1000次和用1000个不同IP登陆1次,系统测处理方式肯定是不一样的

2.如何看待10个虚拟用户和这1000个事务的关系?
就是10个虚拟用户在不注销退出的情况下进行了反复的登录,合计进行了1000次登录(因为:init->action 2min ->end)

3.1000个事务都成功,代表系统可以支持1000个用户同时登陆吗?
不可以,如果只是为测试同时登陆,那就设置集合点,让Vuser同时登陆就OK了
作者: zhubaobao    时间: 2009-12-8 17:22
标题: 请问 我设置了虚拟用户数为100但是我想每次并发用户数为3个
我录制了脚本,添加了集合点,设置了100个虚拟用户
1:请问,那每次并发的虚拟用户数是多少呢?
2:我想每次并发的虚拟用户数为3个,我要怎么设置,还有就是我设置了集合点?
作者: aprincess    时间: 2011-3-4 10:00
无意间翻到了之前的这个帖子,又想到几个问题,补充一下:

1、在这个例子中,虚拟用户数、成功事务数和系统可以支持的在线用户数有无什么推算关系?
前面有提到1000个事务成功,可以说明系统支持1000人同时在线,那是不是说如果duration时间延至4分钟,可能通过的事务数为2000,无事务失败,这时说明系统支持2000人同时在线呢?
换一种思路,如果虚拟用户改为100,持续运行时间2分钟,1000事务通过,无事务失败,此时说明系统支持在线用户是1000吗?如果是这样的话,我的疑问在之前设定虚拟用户为10,现在是100,系统支持的在线用户数和虚拟用户的设定没有关系吗?
当然所有这些设定的前提是响应时间在允许范围内。

2、如果场景设置时是不是运行一次就结束,那么把退出操作录制到end部分还有必要吗?此时是需要把退出同样录制到action中,还是根本就不需要录制退出操作呢?因为感觉退出只执行了10次,而通过事务数为1000,有点搞不懂他们的关系了。

可能有点小白的问题,还望各位高手解答,谢谢!
作者: mymagic    时间: 2011-3-4 10:10
1、不是。
第一种:是每个用户提交2次事务,但是每个用户提交2次事务肯定不是并发执行的,所以不代表系统支持2000人在线并发。
第二种:同一。
2、需要做退出操作。
同1.一。
作者: aprincess    时间: 2011-3-4 15:55
回复 11# mymagic
不好意思,没大懂。
1、你指的每个用户提交2次事务,是根据我的哪个场景推算的?10个虚拟用户2分钟1000事务,还是10个虚拟用户4分钟2000事务,还是100虚拟用户2分钟1000事务,因为这个问题中我假设的场景比较多,能否明确下你的推算是基于哪个场景的。
还有一点说明的是我用的是系统支持在线数,不是并发数,呵呵

2、如果需要做退出操作的话,可否明确下应录制到哪一部分吗?action还是end?

谢谢啦!




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