特斯汀软件测试|热修复测试,这些问题你注意了吗?

在Android项目中,热修复是每一款APP必备的功能,而软件测试人员以保障产品质量为本,对于热修复必须予以足够的重视。

1、什么是热修复

热修复听起来陌生,但是玩过手机的人都接触过,热修复技术就是每次在软件更新时通过下发补丁包,来让安装的客户端动态更新,而无需重新安装应用的技术。

2、为什么需要热修复

传统解决方案

传统流程存在的问题:

  • 每次重新发布新版本的成本过高,浪费大量的推广和运营成本;

  • 用户重新使用新版本的成本过高,需要用户手动下载安装且耗费时间流量;

  • 线上bug修复存在时效性差,重新发版和安装新版本需要用户允许都会拖延bug修复的及时性;

  • 频繁让用户重新下载安装,体验会非常差,会导致用户流失率提高;

  • 热修复解决方案

    热修复解决的问题:

  • 无需重新发版,降低推广和运营成本;

  • 用户无感知,且流量消耗小;

  • 修复率和时效性高,减小损失;

  • 3、热修复方案

    现如今业界存在各种各样的热修复方案,其都各具特点,而这里着重提一个我比较看好的方案:tinker。为什么强调它呢?

  • 平台兼容性好,修复率高:基于和之前方案的对比,tinker方案的修复率有大幅的提高,实际验证过程,目前的tiker版本支持android Q版本的修复;

  • 开源免费:商业考量,免费好用是最重要的,总是可有的提高市场占比,有利于技术的成熟;

  • 区活跃,持续版本更新:过程中出现的问题可以被及时的解决修复;

  • 修复功能强大:支持资源和so的修复;

  • 4、基于tinker方案热修复测试注意事项

    功能测试阶段

  • 功能测试:代码修复,资源修复和SO修复逻辑验证;

  • 功能测试:SDK更新时需要注意系统版本适配;

  • 产品逻辑:这里的逻辑指的是热修复补丁是否下载成功,加在成功等,与功能逻辑无关,及思考如何查看统计线上修复率;

  • 策略逻辑:确保在补丁存在问题情况下,导致修复失败是,可以清除补丁包或者版本升级后成功使其更新不生效;

  • 策略逻辑:思考如何解决同一版本,不同渠道打包可能导致基准包不同的问题;

  • 功能测试:非目标app包在下载补丁包后不会生效且不会出现崩溃;

  • 热修复下发阶段

  • 1. 功能测试:成功修复问题;

    验证相关线上bug可以被成功修复,且不会出现连带bug;

  • 2. 策略逻辑:可以清除补丁包;

    这个是必须要重视的,虽然之前的功能测试中已经覆盖到,但是实际对线上下发补丁包时必须优先测试下发的补丁包可以通过之前约定的策略清除;

  • 3. 性能测试:注意热修复下发后对于启动性能的影响;

    通过tinker的原理可知,下发热修复补丁包后对app的启动性能。故在实际下发补丁包并修复成功后,需要测试启动相关性能;

  • 声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

    上一篇 2020年4月16日
    下一篇 2020年4月16日

    相关推荐