• 0
  • 0
分享
  • 基础软件升级类项目测试思路探讨——软件测试圈
  • 曼倩诙谐 2021-09-10 09:31:27 字数 1675 阅读 809 收藏 0

  在大家日常测试工作中,有一类测试项目想必大家不愿意接手,接手后常常不知所措,毫无针对性,那就是基础软件类升级项目。那么,经过几次基础软件升级项目的洗礼,我以近期做过的sybase数据库升级为例,与大家分享一下自己的测试经验。虽然sybase数据库现在很少用到,但背后分析的逻辑是相通的。即便只有某一点能帮助大家理清和拓宽思维,那么我此次的分享也算非常有价值了。

  面对基础软件类升级项目,即使我们未被告知任何有用的信息,不要迷茫,发挥测试人员的能动性去了解以下信息:

  1.与项目经理确认是大版本还是小版本升级,升级后是否需要重编译。如确认为大版本,那么就会涉及到程序重编译。那么所耗费的人力就可能大大增加了,可能涉及到全量交易回归。如确认为小版本升级,也可分析是大版本基础上靠前还是靠后的版本,越靠后可能风险越小。如sybase数据库升级为小版本升级不需要重编译,同时与sybase厂商沟通小版本升级属于该大版本靠后的小版本升级,按历史经验来看,此类小版本升级不涉及大功能改动,那么可能此类升级风险较小,不需要耗费较多人力参与。

  2.明确基础软件升级后的版本是否对操作系统兼容,与其他一些基础类软件兼容,如不兼容则需排查生产版本。经问询发现sybase升级对部分老旧操作系统不兼容或存在bug,但排查后发现所涉及各系统的生产操作系统版本都已升级,所以不存在此问题。

  3.在业界和公司内部进行了解,是否有已针对该基础软件进行升级并投产运行的情况,升级后有无问题。对此公司内部有系统已进行投产,且未发现问题。业界很少用sybase服务了,所以业界未发现有sybase升级并投产的。

1-1.png

  4.确认是什么原因进行升级。如因出现生产问题还是厂商自发进行的功能优化。在Sybase升级项目中我们问询项目支持部门后得知是因出现生产问题需要进行升级。公司内部某系统生产环境sybase中一个用于日志截断的time controller组件停止运行导致日志无法截断,并且无法清除日志导致日志缓存空间吃满,最终引起sybase服务异常停止。经过sybase服务器重启后time controller正常工作,应用重新启动正常工作。

  5.确认为何会引发该问题。关于Time controller组件停止服务,与该系统的开发和相关环境支持同事一起沟通得知此问题与应用无关,sybase厂商明确表示该场景为极其偶发的情况才会有,与交易逻辑和性能无关。

  6.确认如何复现该问题,经以上问询得出该问题无法在测试环境复现的判断。那么测试就回到回归测试的范畴中去了。

  7.明确基础软件升级是如何改动,优化逻辑是什么。与sybase厂商沟通得到回复优化逻辑国内厂商无权获得,由国外总部进行的优化。由此测试团队判断出此次测试为无针对性回归测试。同时团队也得到厂商提供的新版程序buglist,如有可能,可与厂商和开发一起探讨该类buglist是否与应用有关。(一般buglist为底层功能修复,很少体现在应用层面)

  综上,咱们可以对原本一无所知的软件升级项目做到比较充分的了解。对测试方案和测试范围也能有一个划定。在sybase升级中因无法复现问题,也不了解优化逻辑,我们结合公司内部其他系统的升级后投产运行情况以及本系统重要性等进行回归测试范围划定(包括批量交易),功能测试回归了本系统的核心交易,性能测试回归中挑选高频交易,因涉及日志缓存空间吃满的问题,所以跑8小时疲劳测试,此外对前后优化做性能比对测试。最后以上测试方案邮件发送开发和其他项目支持部门共同确定。

  同时,在项目测试完成后,我们也建议在对于投产后的监控端,是否可以增加针对基础类软件相关的异常指标作为监控指标,严密监控软件适配情况。在sybase升级中我们建议添加time controller报错、sybase日志缓存为监控指标,如复现该日志无法截断问题可以及时得到告警并解决。

1-2.png

  以上就是我对基础软件升级项目测试经验的总结,欢迎各位一起探讨。



作者:张涵宇   

来源:51Testing软件测试网原创

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • APP概念Application的缩写,APP指智能手机的应用程序,如微信、支付宝等APP测试范围APP测试分类业务功能测试APP专项测试兼容性测试安装、卸载、升级测试交叉事件测试Push消息推送测试性能测试其他测试用户体验极限、边界权限业务功能测试概念按照用户的需求(需求说明书、原型等)去检验开发的代码实现是否满足用户的功能性需求。测试对象功能点(单独模块)==》单元测试多模块==》集成测试业务流程==》系统测试、验收测试、冒烟测试测试方法测试理论阶段与测试用例设计方法等即适用于WEB产品,也适用于APP产品。理论阶段设计测试用例8大方法:等价类边界值因果图判定表场景法流程图正交法错误推测法...
            14 14 1584
            分享
          •   微信发红包测试用例  功能  1、在红包钱数和红包个数的输入框中只能输入数字;  2、红包最多最少的输入钱数200、0.01;  3、拼手气红包最多可以发多少个红包  4、超过最大拼手气红包是否有提醒;  5、当红包钱数超过最大范围是否有提醒;  6、余额不足时,红包发送失败,或者会不会匹配切换支付方式;  7、红包描述里是否可以输入表情汉字英文数字等;  8、红包描述里最多有多少个字符;  9、发送的红包别人是否能正常领取;  10、发送的红包自己可不可以领取;  11、24小时后别人没有领取的红包是否可以退回原来账户,或者是否还可以领取;  12、用户是否可以多次抢一个红包;  13、...
            11 12 3640
            分享
          •   大家好,今天我们来探讨一个问题,这个问题可能会影响到大家的职业规划,也可能会影响到人员招聘时选人的方向,希望本文对大家有帮助。  我想大家一定都思考过或者疑惑过:技术、经验、业务这三方面,哪个更重要一些?  在软件开发过程中,不管是开发人员、测试人员还是产品经理,无论是谁都要面临这个问题。  但是,我先不下结论,我们先来弄清楚如下几个问题。  技术、经验、业务的范畴  1.技术  一说到技术,有的人会说了:C++、Java、python这些就是技术。  但是不完全对,实际上这些编程语言是实现技术方案的工具。我个人认为,编程语言语法、数据结构是属于技术的,但是编写的代码是否为更优,这就是属于...
            0 0 1447
            分享
          •   近日,#董明珠怒斥员工吃着碗里看着锅里#上了热搜。  董明珠在访谈中表示,她曾找员工来谈话,让他们去持有格力的股票,有的可能认为买这个没什么用,也许过两年就走了;有的买了,捞一把,最后还是走了。有的人吃着碗里还看着锅里的,绝对不会允许他在格力待下去。  在这个话题下,有接近10万位网友留言,不仅如此,这个采访在企业内部也引起了讨论。  作为企业高管及董事之一的CC认为,“吃着碗里的看着锅里”的员工明显是对企业的忠诚度不够,这样的员工不能留。  公司给员工的薪资福利根据员工的能力已充足,即“德配位”,职业规划也不错,员工依然“吃着碗里的看着锅里”,这样的员工“胃口”太大养不活,甚至不客气的说...
            0 0 1620
            分享
          •   Nose是一个Python单元测试的扩展,能自动发现并运行测试,使得测试更容易。  框架介绍  nose是一个第三方单元测试框架,它完全兼容unittest,并且号称是一个更好用的测试框架。  1、用例的编写方式除了编写继承于unittest.TestCase的测试类外,还可以编写成没有继承的测试类。同时nose也支持定义函数来作为测试。  2、unittest所支持的用例发现和执行能力,nose均支持,nose支持用例自动(递归)发现。  3、使用nosetests命令,默认发现当前目录下所有包含test的测试用例,不包括以 _ 开头的用例。  4、通过-w参数指定要自动发现的目录,-m...
            11 11 1941
            分享
      • 51testing软件测试圈微信