51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2633|回复: 6
打印 上一主题 下一主题

[求助] 不支持并发的C/S程序如何测试性能?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-12-10 10:14:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我所知道的LR的测试原理大致如下:(对C/S模式的程序,不是B/S模式的程序)
1,按选定的网络通讯协议,向服务器发送指定的数据包;
2,获取从服务器返回的数据包;
3,计算时间。

现在我有个问题很疑惑,请高手指点:
如果申请多个Vuser,执行上述第一步骤,如果服务器支持并发,则不同的请求会排队等待回应;如果服务器不支持并发(例如发送的数据包中服务器需要锁定对象进行操作,其他需要使用这个对象的请求必须等待前一次的锁定释放),申请多个Vuser是不是没有意义?因为第2个vuser的请求必须等第一个vuser释放请求的资源后才能进行。

对这种情况,我初步的想法是不同的vuser操作不同的对象,由于对象是在脚本中指定,也就是说不同的vuser指定不同的脚本,想来好像可行,但如果100个vuser,难道要写相似的脚本100次?什么地方可以对脚本本身参数化?也就是如果vuser可以指定某个参数,该参数被替换到脚本中,这样只需要写一套脚本就可以了。不知道有没有朋友有相关经验?指点指点
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-12-10 12:30:01 | 只看该作者
如果服务器不支持并发,哪还进行性能测试有什么意义?

哪就一个一个处理呗

[ 本帖最后由 兰色犹豫 于 2007-12-10 12:34 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2007-12-10 16:36:52 | 只看该作者
虽然服务器不支持对同一对象的并发操作(操作时须锁定该对象);但服务器支持对不同对象的并发操作,即只要操作的对象不一样,没有锁定问题即可。这就要求脚本中每个vuser选择操作的对象必须不同,如果是创建对象到还好办,随机生成,但如果是修改,问题就麻烦了,怎么把对象的编号通过vuser指定,然后再替换脚本中对象的引用?
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-12-10 17:13:29 | 只看该作者
把VUER的动作抽象出来,具体的行为通过参数来替代进去.
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2007-12-10 18:04:55 | 只看该作者
楼上,可否详细点?举个简单的例子说明一下?

例如  关键参数productID唯一代表一个product,该productID在script中是个参数,我怎么能指定Vuser使用不同的productID? 现在是在script的开始部分定义productID的值。
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2017-7-4 09:32
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    6#
    发表于 2012-12-3 16:46:42 | 只看该作者
    楼上问题解决没有,我也要到你同样的问题了!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2012-12-4 11:16:07 | 只看该作者
    呵呵,有一种东西就参数化,如果你希望每个vuser在运行过程中使用不同的参数,可以在参数属性里设备unique,once,这样,同一个vuser会反复运行同一个参数,其它vuser可以运行各自的参数就不会冲突了。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-9 03:47 , Processed in 0.070199 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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