质量框架

FISCO BCOS系统当前包括区块链底层、中间件平台及业务应用三大块,基本上涵盖了一个完整系统后端服务的所有模块。整个质量框架也是基于这三大块的内容,从功能测试到DFX专项测试,最后收于自动化工厂的三层循环模式,这三层之间的关系也是相互影响、相互促进,缺一不可。

功能测试

采用总分总模式,构建全系统环境,跑通每一个模块,即将底层、平台、应用完整业务走一遍,再将模块细化到每一个功能特性,具体包括如下。

区块链底层

FISCO BCOS区块链由较多特性模块构成,只有每个模块都能稳定运行,才能保证区块链平台正常工作。特别是一些核心层模块,都需要经过大量场景模拟、测试验证来确保代码的健壮性,上线后能长期稳定运行。接下来会有较多篇幅阐述区块链底层平台测试方法,从环境搭建到连接共识,再到数据同步及业务稳定运行,详细介绍每一种典型场景测试思路,通过这些场景来达到覆盖所有区块链涉及的模块。

1、环境搭建2、连接3、共识4、同步5、兼容性6、安全7、自动化

中间件平台

1、2、……

业务应用

1、wepop2、fisco-cc3、weid4、WeEvent5、weledger6、腾讯出行7、wesign

DFX测试

DFX测试也称为专项测试,它是一种在对产品功能性测试之外,通过改变外部环境来验证其稳定性的测试方法,并且,在DFX测试过程,同时对产品再次进行功能验证。DFX测试可从硬件和软件两方面展开,保证产品运行所在环境变动的情况下依然工作正常,常见的有以下几大类。

1、软件包括:操作系统、节点进程、数据库2、硬件包括:CPU、内存、带宽、硬盘、端口、机器隔离

包括稳定性测试,都可以在DFX专项测试中进行,可以直接从区块链底层发起,或者应用层作用底层进行验证。

自动化工厂

FISCO BCOS自动化主要有两个目标,历史版本基线用例批跑和偶发性bug验证。

  • 基线版本用例批跑,FISCO BCOS中连接、共识、同步等所有基础特性全部自动化实现,每轮新版本发布前,基线自动化用例全部批跑一遍。每次迭代版本的新特性根据条件做成对应自动化,以及每天定时任务批跑自动化。
  • 偶发性bug验证,对于一些触发条件比较苛刻的bug,手工模拟费时费力,通过自动化创建好,后续每个迭代版本都能使用。以及后续对偶发bug修复后的验证,可以用自动化设置触发条件,反复批跑。