51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2792|回复: 2
打印 上一主题 下一主题

[讨论] 关于集合点:策略、虚拟用户和物理用户

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-7-5 11:00:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有这样一个场景,网上购书,一个用户可以购买多本书,为了模拟真实的,随机的用户购书情景,这里用户是参数化的,书也是参数化的,在一个脚本中录制了两个Action
1、购书
2、清空用户的购书数据--为什么要清空?因为一个用户选择了很多书以后,在Load这个页面的时候会有很大的数据量产生,会导致性能测试的数据不够准确。在这里设置了一个集合点,等到所有的用户到达以后就执行这个操作。
我们写了一个vbs脚本去操作数据库把相关用户的购买记录删除,暂且叫做RefreshData,执行这个脚本以后指定用户的购买记录就没有了。

在Controller中设置了500个虚拟用户,参数化的物理用户有20个。

这里遇到了几个问题
1、这个集合点设置好以后,就意味着所有的用户到达这个点就执行清空操作。这个用户是什么概念?物理用户还是虚拟用户?答案是这个是虚拟用户的概念。在这个之前,已经有很多个虚拟用户调用了同一个物理用户进行购书。已经导致了性能测试的不准确性,如何设置策略让他清空物理用户的数据。
就是想让,所有的20个物理用户购买了5本书以后,就把自己的数据删除,重新再购买。这个似乎与LoadRunner设计虚拟用户的初衷有所违背?!?!?

2、设置的集合策略是100%的用户到达才执行清空,30秒就超时了---这个是默认设置。假如我设置了500个虚拟用户,物理用户只有20个,1分钟启动5个虚拟用户。当10分钟之后,此时运行的虚拟用户有50个,具体有多少个物理用户被调用,未知!那么这个时候的集合策略如何起作用呢?现在第一、二、三个虚拟用户已经到达了集合点,Controller会认为是50个用户全部到达了这个点才执行RefreshData操作呢?还是要等到500个用户全部起来并且到达这个点?

谢谢大家!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2006-7-5 11:16:17 | 只看该作者
反复看了很多遍楼主的问题,还是没看明白,不知道楼主想问什么。
这里我只建议你,如果你要设置500个虚拟用户,最好还是增加真实用户的数量,不要使用同样的用户名,这可能会对测试结果产生影响。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2006-7-5 11:23:50 | 只看该作者
这个问题就像编程中的运行时和编译时的错误、设置问题。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-24 07:42 , Processed in 0.076784 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表