51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

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

[原创] 大批量修改客户信息,出现错乱现象,求助解决?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-7-13 13:03:56 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
J2EE架构,生产上大批量修改客户信息,出现错乱现象,想在测试环境重现此问题,有什么办法?

每次大批量调整客户信息(联系电话)就会出现大批错乱,系统约为40-50个人同时操作。
错乱客户信息:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

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

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2009-7-27 19:29:27 | 只看该作者

谢谢各位的答复,问题已经解决!

测试过程中,是按照以下的方法重现数据错乱的:
1、设置压力测试场景,5个用户并发进行客户信息查看并更新;
2、压力测试的过程中,用另外一个用户(客户经理)登录系统,也进行查看客户信息;
上面的第2点操作发现了数据错乱的问题,所查看的客户信息是另一个客户经理所属的客户信息;

开发人员发现问题根源:
1、主要是数据对象的重用造成的,多个用户公用了相同的数据对象,导致数据错乱;
2、代码系统为了提高系统效率将表属性模型做了缓存,在数据填充的时候重用了该模型。
     重用的时候对模型进行clone,但clone的过程没有完全复制对象,只是部分复制了而另外的一部分则还是公用的。
     这样造成了多个用户公用一部分数据对象从而导致数据错乱。
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2009-7-13 14:41:38 | 只看该作者
并发压力大是SQL语法的UPDATE 对提交的事务性能有影响产生的吧
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2009-7-13 14:20:19 | 只看该作者
能举举例子吗?
1、在什么的程序逻辑处理的顺序,会引起错乱?

2、怎么样的“资源竞争的处理情况”,可能引起错乱?

谢谢!
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2018-2-28 18:04
  • 签到天数: 40 天

    连续签到: 1 天

    [LV.5]测试团长

    4#
    发表于 2009-7-13 13:54:45 | 只看该作者
    应该是代码的问题,或者在竞争资源时发生了错乱。请向开发咨询程序逻辑处理的顺序及出现资源竞争时的处理状况。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
     楼主| 发表于 2009-7-13 13:44:37 | 只看该作者
    谢谢楼主回复!

    楼主提到的“关键要了解出问题的本质”,可以说的详细一点吗?谢谢!

    另外

    1、次系统中,不同的用户登录,只能看到自己的客户,因此不存在修改同一条记录的问题;

    2、已经通过LR模拟用户的操作进行过压力测试(场景一:单条修改客户信息(电话号码);    场景二:批量修改订货日期(次处没有涉及修改电话))
       查看数据,确认没有发现错乱
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2#
    发表于 2009-7-13 13:26:05 | 只看该作者
    问下开发,不同的人同时队相同记录进行操作,他是如何处理的。
    重现问题可以尝试用LR生成负载去压,但是关键要了解出问题的本质。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-9 10:19 , Processed in 0.066523 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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