定义

兼容性测试是指检查软件在一个特定的硬件、软件、操作系统、网络等环境下是否能够正常地运行,检查软件之间是否能够正确地交互和共享信息,以及检查软件版本之间的兼容性问题。包括软件之间和软硬件之间的兼容性,更多的是指发现软件在某个环境下不能正常使用。

场景

对于区块链兼容性测试来讲,主要考虑以下几点:

底层版本兼容性

  • 操作系统兼容
    验证软件版本跟底层操作系统的兼容性,保证软件在对应的操作系统下(Centos、Ubuntu等)、以及对应内核版本下能正常运行,不会异常退出。

  • 硬件兼容
    验证软件对服务器硬件的兼容性。

  • 数据库兼容
    FISCO BCOS节点可以使用Mysql存储数据,需要确保在使用相关Mysql版本时,系统运行正常。

  • 依赖的第三方包兼容
    系统中会引用一些外部第三方包,需要验证当前系统代码与第三方软件包的兼容性。

  • 历史功能兼容
    版本升级后,新增功能不能影响历史功能的使用。

  • 历史数据兼容
    对于历史数据,版本需要支持向下兼容,即版本升级后,需要确保新的软件版本能兼容历史版本数据。

底层与周边配套组件兼容性

版本升级后,区块链的相关变更需要兼容周边组件(sdk、控制台、各应用等),或周边组件同步适配底层变更,确保区块链与周边配套组件的交互不受影响。若涉及前台界面,还应考虑跟不同类别浏览器的兼容性。