51Testing软件测试论坛

标题: loadrunner如何模拟多个用户登陆浏览器,同时点击下载一段视频。 [打印本页]

作者: 零测试    时间: 2011-11-3 10:33
标题: loadrunner如何模拟多个用户登陆浏览器,同时点击下载一段视频。
我在公司里做性能测试的时候,vuser上的脚本都没有问题了,在vuser里设置run-time settings 的run logic设置4次都可以选择4个用户登陆跑完整个流程。
但是只要在controller里一模拟多个用户同时点击下载一段录像就会报错。在controller中报错的代码如下:

Action.c(82): Error -27727: Step download timeout (120 seconds) has expired when downloading resource(s). Set the "Step Timeout caused by resources is a warning" Run-Time Setting to Yes/No to have this message as a warning/error, respectively


脚本的具体步骤:
1、一个用户登陆浏览器
2、根据需要下载的录像找到相应的目录路径
3、点击下载录像
4、选择保存为本地电脑的位置
5、开始下载
作者: 真实的追求者    时间: 2011-11-3 11:33
Run-Time Setting ------ Internet Protocol ------ Preferences ------Option ------ Step download timeout(sec)时间改大一点试试
作者: perterliu    时间: 2011-11-3 11:43
对于楼上补充:Run-Time Setting ------ Internet Protocol ------ Preferences ------Option 下的,有关超时的几个时间,你可以相应的把时间设置长点
作者: 零测试    时间: 2011-11-3 12:57
Run-Time Setting ------ Internet Protocol ------ Preferences ------Option ------ Step download timeo ...
真实的追求者 发表于 2011-11-3 11:33



    是virtual user generator里面把runtime设置长一点,还是在controller里把整个脚本设置长一点呢?
作者: jh_soft    时间: 2011-11-3 13:14
你把超时的信息给屏蔽掉Run-Time Setting ------ Internet Protocol ------ Preferences ------Option ------ Step timeout caused by resources is a warning设置为yes,同时在每个浏览器之间添加think_time(5)函数
作者: 零测试    时间: 2011-11-3 21:33
你把超时的信息给屏蔽掉Run-Time Setting ------ Internet Protocol ------ Preferences ------Option ---- ...
jh_soft 发表于 2011-11-3 13:14


   我明天上班的时候试试!我在家里弄都没有问题的!明天上班的时候去试试那个!
作者: msnshow    时间: 2011-11-3 22:34
模拟不了点下载,保存,只能模拟下载文件的请求
作者: 零测试    时间: 2011-11-4 08:26
模拟不了点下载,保存,只能模拟下载文件的请求
msnshow 发表于 2011-11-3 22:34

   谢谢版主的关注!呼呼!
    要下载的资源是在Linux服务器里,开发部门开发了一款工具,可以抓取后台硬盘的读取速度。我在virtual user generator中进行单个用户回放的时候,通过工具是能够抓到硬盘读数据的速度,
   这应该证明能够模拟点击下载,保存吧。只有在controller中不能模拟多用户。每次都是报上面这个错误。
作者: 夏日摸摸茶    时间: 2011-11-4 13:24
你再执行controller中 设置的迭代和更新用户的  方式是什么?? 如果选择顺序的话,那相当于每个用户都同时下载,注意一下这里的参数化方式
作者: 零测试    时间: 2011-11-5 00:22
你再执行controller中 设置的迭代和更新用户的  方式是什么?? 如果选择顺序的话,那相当于每个用户都同时 ...
夏日摸摸茶 发表于 2011-11-4 13:24



    我那里选择的是顺序 迭代更新  要求的就是每个用户同时下载。在用户那里参数化了,在录像那里也参数化了!
作者: 零测试    时间: 2011-11-7 12:39
非常感谢各位大侠拔刀相助!Controller已经可以成功运行了。
但是多用户的模拟下载,在后台Linux服务器上的硬盘读取速度方面还是没有实现。不管我模拟多少个用户进行负载,始终是一样的硬盘读取速度。
上午开始怀疑浏览器有问题,下午进行浏览器验证一下看看。是不是同一个浏览器下载多段录像,都显示同一个数据的!
作者: 夏日摸摸茶    时间: 2011-11-7 13:19
要求的就是每个用户同时下载  那迭代方式就必须选择“唯一”和“每次迭代”搭配。否则 就算你模拟100个用户,这100个虚拟用户也是同时运行 user1进行并发 如果持续时间没结束的过,还会再同时运行user2.  相反 如果使用唯一和每次迭代方式的话,那100个用户就会分别使用user1、user2。。。user100 同时进行并发。

具体内容参考下 controller中的参数化取值的知识
作者: 零测试    时间: 2011-11-7 21:15
要求的就是每个用户同时下载  那迭代方式就必须选择“唯一”和“每次迭代”搭配。否则 就算你模拟100个用户 ...
夏日摸摸茶 发表于 2011-11-7 13:19


                我选择的select next row:Unique,
                   update value on:each iteration
                                               并发的方式是没有错的。
               今天试验的结果出来了,是我们那个软件设置了网络下载流量,每个IP地址只能下载10M/s。所以才会模拟不出来的呢。
                  感谢你
作者: R9527    时间: 2011-11-16 13:37
如果我5个用户同时登陆5个不同界面,又同时下载资料。这样应该怎么解决??求问!
作者: 零测试    时间: 2011-11-17 12:47
是否可以考虑录制五个脚本:每一个脚本有一个用户登录系统并进入相应的界面,然后下载一个资料。
然后根据controller控制5个用户登录进去都在同一个地方设置一个集合点,那就是下载资料之前设置一个rendzvous。这样应该可以解决了!




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