51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4691|回复: 20
打印 上一主题 下一主题

[原创] 想问下那个50次的迭代,跟50个并发有什么 区别呀

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-11-12 17:59:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我开始学lr
弄的有点不明白..迭代跟并发有什么区别...

还有现在我想测1000个用户的同时在线 ,50个用户并发

不明白的是我1000个用户同时在线.. 是不是我在参数化时,就必须参数化1000个用户名和对应的密码...

假如我并发创建这个动作(那我在录制脚本的时候 ,我把一个用户的登录放在 init里面。把创建的动作放在action中... end的里面放的是用户退出的..)
那我现在测50个用户并发。  我把action中的创建名参数化了50个.. init里面的用户我没有去做参数化... 这样的参数化是正确的吗???
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2011-11-12 21:08:27 | 只看该作者
迭代与并发完全不同两个概念。跌代指单个脚本运行次数,并发指同时执行某一操作的(虚拟)用户数。
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2022-5-8 19:23
  • 签到天数: 137 天

    连续签到: 1 天

    [LV.7]测试师长

    3#
    发表于 2011-11-12 22:16:37 | 只看该作者
    楼主得好好看看文档了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2011-11-13 00:15:00 | 只看该作者
    50次的迭代 就是脚本跑50次;但并发50个用户 跑1小时 那压力也是比较大的;
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
     楼主| 发表于 2011-11-13 09:59:02 | 只看该作者
    本帖最后由 qq675508756 于 2011-11-13 10:05 编辑
    楼主得好好看看文档了
    msnshow 发表于 2011-11-12 22:16



          ...是的我现在就在慢慢看....
    但是现以急呀!!我们已经没时间在测了....
    现在我就是想弄清楚 50次迭代...把用户登录放在init里面 。把 创建放在 action里面..这种思路是正确的吗??
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2022-5-8 19:23
  • 签到天数: 137 天

    连续签到: 1 天

    [LV.7]测试师长

    6#
    发表于 2011-11-13 10:37:33 | 只看该作者
    你把登陆放在init里面,那只会有50个用户在线的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2011-11-13 18:34:13 | 只看该作者
    实际是登陆一次,然后创建操作执行50次。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
    发表于 2011-11-14 12:41:11 | 只看该作者
    本帖最后由 wanghuanw 于 2011-11-14 12:42 编辑

    回复 1# qq675508756

    问题一:迭代指的是你Action进行了多少次操作(init和end只会执行一次),而并发指的是你一次并发的(虚拟)用户数;

    问题二:1000用户名和对应的密码,理论上是和你所说的一样参数化1000个用户名和对应密码并且你的参数(用户名和密码)要设置成(唯一/一次),此问题只是个人建议 不一定对 你可以问一下其他的站友;

    问题三:50个用户并发,init里没有参数化肯定是不行的,按你所说的思路:其结果是一个人登录进行了50次的操作,你所有的记录都是保存到登录时的账户上,建议你参数化50个用户并设置参数(唯一/一次)这样你在Load Runner里录制时就可以模拟50个用户,且所使用的用户名不会重复。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2011-11-14 12:48:46 | 只看该作者
    迭代:是指一个脚本(即一个用户)重复跑很多次,就像一个人吃一大锅饭,要一顿一顿慢慢吃才能把一大锅饭吃完,这就叫迭代。迭代压力不大,所以一大锅饭要花很多时间去吃。
    并发:是指多脚本(即多个用户)一起跑一次,就像一群人吃一大锅饭,一顿就可以把一大锅饭吃完,这就叫并发。并发的压力很大,所以一大锅饭花一点点时间就可以吃完。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2011-11-14 12:53:21 | 只看该作者
    好像解释的不好。重新解释一次。
    迭代:一个人使用自己的帐号密码在2011年11月14日12:50登录51testing进行访问一次,然后在这之后每次都退出51testing又重新登录,重复很多次,就叫迭代
    并发:很多人使用各自的帐号密码在2011年11月14日12:50登录51testing进行访问,每个人只做一次,但是大家一起在同一时间做,这就叫并发。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2011-11-14 13:06:41 | 只看该作者
    楼主,你是不是测试1000个用户同时在线,同时测试50个并发用户在创建?还是你自己在用一个用户造数据哦?
    如果是你在使用一个用户在造数据的话,那么用你的方法:
    "把用户登录放在init里面 。把 创建放在 action里面..这种思路是正确的吗"
    是完全可以的。
    如果你是测试50个并发用户在创建,那么用你的方法就是错误的了。
    你可以把50个用户都放在一个Login的action中,然后把50个用户要创建的放在Create的action中,然后在Create这个action之前设置一个集合点rendezvous,让50个登录进来的用户都在创建操作之前集合,50个用户都达到这个点之后,一起并发执行创建操作。
    具体做法:
    1、在Virtual user Generator中录制一段登录和创建的脚本
    2、把登录操作录制到Login的action中
    3、把创建操作录制到Create的action中(记得在创建之前设置一个集合点rendzvous)
    4、在Login中参数化登录名和密码(要达到50个哦)
    5、在Create中参数化要创建的信息(如果该创建可以同名,那么可以不用参数化,毕竟你是测试50个用户同时并发创建的功能)
    6、设置run-time settings运行50次
    6、把该脚本放到controller中
    7、在Edit Schedule中Duration中设置run unitl completion,点击run
    8、现在应该可以查看结果了。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
    发表于 2011-11-14 16:13:59 | 只看该作者
    迭代与并发,楼上已经说的很清楚了,感觉楼主有点混淆并发用户与在线用户的概念。
    在线用户,在不同的系统中不同的实现,很多网站都是靠session维持在线,如果session存在cookie,那非常简单,几乎不占用什么CPU资源。
    并发用户是多个用户同时向服务器发出请求,是真刀真枪的要服务器干活的。
    不是一个概念。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
    发表于 2011-11-14 17:40:53 | 只看该作者
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
    发表于 2011-11-15 10:23:28 | 只看该作者
    不太懂在学习中
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    15#
    发表于 2011-11-15 12:58:44 | 只看该作者
    回复 12# feng小猫


        感谢感谢!指出我的错误!非常感谢
       session和cookie方面维持用户在线这些概念,还是欠缺点。你是否可以讲详细点!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    16#
    发表于 2011-11-15 13:19:52 | 只看该作者
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    17#
    发表于 2011-11-17 18:46:43 | 只看该作者
    回复 11# 零测试


        请问一下,如果是把登录的操作放在init中,把操作放在Action中,如果要模拟1000个用户去点击某个链接,还需要设置1000个用户名和密码么?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    18#
    发表于 2011-11-17 19:16:11 | 只看该作者
    回复 17# 51testingnet


        你把登录操作放在init里面,要分两种情况:
       第一种:该系统,同一个用户可以登录多次,那么,你完全可以不用设置1000个用户名和密码,就可以通过controller设置完成1000个用户的性能测试;
       第二种:该系统,同一个用户只可以登录一次,如果第二个相同的用户名登录,那么第一次的登录就自动取消了,对于这样的系统,你把登录放在init,我认为是无法实现1000个用户的性能测试的。
        我公司里现在做的这个项目就是一个用户名只能登录一次,譬如说一个人甲用admin登录之后,如果还有另外一个人乙使用admin用户登录,那么甲就没法使用该系统的功能了。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
     楼主| 发表于 2011-11-20 23:29:17 | 只看该作者
    回复 11# 零测试


        非常感谢!!现在我好像明白一点了....
    谢谢!!!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20#
     楼主| 发表于 2011-11-20 23:29:24 | 只看该作者
    本帖最后由 qq675508756 于 2011-11-20 23:38 编辑

    回复 11# 零测试

    你把登录操作放在init里面,要分两种情况:
    第一种:该系统,同一个用户可以登录多次,那么,你完全可以不用设置1000个用户名和密码,就可以通过controller设置完成1000个用户的性能测试;
    第二种:该系统,同一个用户只可以登录一次,如果第二个相同的用户名登录,那么第一次的登录就自动取消了,对于这样的系统,你把登录放在init,我认为是无法实现1000个用户的性能测试的。
    我公司里现在做的这个项目就是一个用户名只能登录一次,譬如说一个人甲用admin登录之后,如果还有另外一个人乙使用admin用户登录,那么甲就没法使用该系统的功能了。


    像你说的这种情况 ,目前我们的是一个用户可以登录多次,但是我们的session中设置了超时(例如:我第一个用户aa 用IE浏览器登录,当我第二个用户bb再用IE浏览器登录。那么些时只要bb一登录那么我的aa用户就会自动告诉你登录超时,请重新登录) 像这样的话,我要测50个用户对创建的并发(前提是我把登录和创建都放在action中,并且把用户名和密码都,创建中用到的名称我都做参数化了)此是会达到那个并发的效果吗??
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-16 01:33 , Processed in 0.087344 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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