AntChainOpenLabs / AntChainBridge

Apache License 2.0
9 stars 1 forks source link

GLCC课题:插件接口测试工具 #3

Open zhejianglab-ospo opened 5 months ago

zhejianglab-ospo commented 5 months ago

希望测试工具支持对插件所有接口给出全面可靠的测试流程:1.测试用例全面覆盖已有插件的已有接口、2.用例需要充分考虑接口的正常、异常测试场景、3. 测试工具需要提供充分的执行日志信息和测试结论信息。

bladechen commented 5 months ago

报名链接:https://www.gitlink.org.cn/glcc/2024/subjects/detail/951

背景

AntChain Bridge将跨链互操作解释为两个层次:通信和可信,即跨链的目标在于实现区块链实体之间的可信通信。

在AntChain Bridge的架构中,中继需要与区块链进行交互,而异构链的通信协议各式各样,无法统一适配,因此AntChain Bridge抽象出了区块链桥接组件(Blockchain Bridge Component, BBC),来解决区块链和跨链网络的通信问题。

每种异构链要接入AntChain Bridge跨链网络,都需要实现一套标准的区块链桥接组件,可以分为链上和链下两部分,包括链下插件和系统合约。链下插件需要基于SDK完成开发,链上部分则通常是智能合约,要求实现特定的接口和逻辑,为降低开发难度,我们提供了Solidity版本的实现。

AntChain Bridge为开发者提供了SDK、手册和系统合约模板,来帮助开发者完成插件和合约的开发。同时,AntChain Bridge提供了插件服务(PluginServer)来运行插件,插件服务是一个独立的服务,具备插件管理和响应中继请求的功能。

在当前的工程实现中,BBC链下部分是以插件的形式实现的。AntChain Bridge实现了一套SDK,通过实现SDK中规定的接口(SPI),经过简单的编译,即可生成插件包。插件服务(PluginServer, PS)可以加载BBC链下插件,详情可以参考插件服务的介绍文档。

目标

设计与实现异构链插件测试工具,并针对AntChain Bridge已经开源7款插件产出测试报告。

导师

方宝珠 | fangbaozhu.fbz@antgroup.com 陈盛龙 | shenglong.chensl@antgroup.com

产出要求

支持对插件所有接口给出全面可靠的测试流程:

  1. 测试用例全面覆盖已有插件的已有接口:插件需要覆盖现有bcos,fabric,eth,eos,chainmaker,hyperchain,polygon等异构链插件,接口需要覆盖目前已有13个接口;并且针对每个异构链插件,测试工具需要支持启动对应的链进行测试
  2. 用例需要充分考虑接口的正常、异常测试场景:正常场景需要保证接口之前调用顺序的正确有效,异常场景需要考虑合约部署需兼容手动部署合约的场景、跨链消息收发需要考虑异常消息收发等多种场景;
  3. 测试工具需要提供充分的执行日志信息和测试结论信息:保证每个接口都有日志输出,关键执行逻辑处需要提供核心参数信息,执行失败或异常时提供充分的分析日志。
  4. 产出工具使用说明,并给出bcos,fabric,eth,eos,chainmaker,hyperchain,polygon 7款插件的测试报告

能力要求

熟悉Java开发
了解区块链工作原理
熟悉主流区块链的使用方式