zoukankan      html  css  js  c++  java
  • 「线上Bug」方法调用错误导致

    最近上线了一个项目,运行10天,发现一个问题,一个取消的操作,导致数据库表中的某些字段被更新为null

    作为测试,难辞其咎;

    思考为啥会出现这样的错误的时候,

    场景是: 本次给表A中的增加了一个字段,本次对这个新增字段SS,做一些CRUD;

    我只关注了对这个新增字段的验证,新增数据则该字段有默认值,更新字段该值变化,再次更新再次随之变化,

    而这个表中的字段BB,CC和DD也随之改变了。 上线之后才发现他们被改变了!!!

    本次是功能验证,在呈现上,SS和BB/CC/DD没有关联,所以理所应当的认为其他字段不会受影响。

    但是!!开发人员调了一个udpateObject的方法,而不是UpdateSSbyID。

    如果udpateObject方法之前能取出该对象的全部属性,当然也不至于有问题,问题在随着业务增加,该表有78个字段了,然后udpateObject之前,QueryObjectbyID只查询了其中62个字段。

    我觉得这个单纯的功能测试,不可能保证线上没有bug的;

    需要知道本次功能涉及的接口,然后对请求体,返回值一一验证。

    不然,历史总会惊人的相似。每天都会忙碌的fix数据,风风火火显得自己很忙。

  • 相关阅读:
    Mysql安装
    mysql 密码过期
    svn 合并分支
    idea 分支主干管理
    linux删除数据恢复,extundelete
    linux 转换文件编码
    sina 接口 根据ip获取各个国家和地区
    SQL中char、varchar、nvarchar的区别
    C#中virtual和abstract区别,举例子
    父类和子类的关系、代码例子
  • 原文地址:https://www.cnblogs.com/qianjinyan/p/12339798.html
Copyright © 2011-2022 走看看