区块链共识算法测试方法、装置、计算装置和存储介质制造方法及图纸

技术编号:20655025 阅读:55 留言:0更新日期:2019-03-23 06:44
本申请公开了一种区块链共识算法测试方法、装置、计算装置和存储介质,涉及区块链领域,用以解决通过修改区块链主节点或参与共识节点的代码,判断该区块链的共识算法容错能力的问题。该方法中,通过为区块链节点配置前置节点,使得在前置节点内生成测试用例集,无需对区块链节点进行修改,让测试更简单,更容易操作,还可以保证服务上线后不用担心代码是否被改过。此外,该方式入侵性小,学习成本低,可以适用于不同区块链的不同类型的区块链共识算法测试。

【技术实现步骤摘要】
区块链共识算法测试方法、装置、计算装置和存储介质
本专利技术涉及区块链领域,尤其涉及一种区块链共识算法测试方法、装置、计算装置和存储介质。
技术介绍
区块链共识算法是允许关联节点连接起来进行工作,并在某些成员节点失效的情况下,工作仍能正常进行。这种容错能力是区块链的主要优势,并有内置冗余余量以作备用。为了测试区块链共识算法容错能力,通常做法是修改节点进行错误注入法测试,如图1所示,接收客户端发送共识请求消息的节点为主节点,即节点四为区块链主节点,节点一和节点二为参与共识的节点,修改区块链主节点或参与共识节点的代码,用以判断该区块链的共识算法容错能力。然而通过错误注入法进行测试,需要修改节点中的代码逻辑、并对各节点进行定制开发,由于定制开发,将导致代码复用率低,开发成本大,此外,修改代码逻辑的节点要是程序员忘记关闭节点代码开关,容易测试代码上线造成上线失败,或带来线上未知的风险,使得维护成本高。
技术实现思路
本申请实施例提供一种区块链共识算法测试的方法、装置、计算装置和存储介质,通过为区块链节点配置前置节点,使得在前置节点内生成测试用例集,无需对区块链节点进行修改,让测试更简单,更容易操本文档来自技高网...

【技术保护点】
1.一种区块链共识算法测试方法,其特征在于,每个区块链节点配置有前置节点,所述方法包括:前置节点通过预置的密钥接收该前置节点连接的区块链节点发送的共识请求;对所述共识请求进行解析,得到请求用例;根据测试用例集和请求用例之间的关系,确定得到的请求用例对应的测试用例集;将所述测试用例集发送给相应前置节点,以使该相应前置节点将测试用例集透传给与该相应前置节点连接的区块链节点;接收各相应前置节点返回的执行报告;将所述执行报告保存到本身的报告列表中,并同步给相应前置节点。

【技术特征摘要】
1.一种区块链共识算法测试方法,其特征在于,每个区块链节点配置有前置节点,所述方法包括:前置节点通过预置的密钥接收该前置节点连接的区块链节点发送的共识请求;对所述共识请求进行解析,得到请求用例;根据测试用例集和请求用例之间的关系,确定得到的请求用例对应的测试用例集;将所述测试用例集发送给相应前置节点,以使该相应前置节点将测试用例集透传给与该相应前置节点连接的区块链节点;接收各相应前置节点返回的执行报告;将所述执行报告保存到本身的报告列表中,并同步给相应前置节点。2.如权利要求1所述的方法,其特征在于,所述根据测试用例集和请求用例之间的关系,确定得到的请求用例对应的测试用例集,具体包括:通过遗传算法对得到的请求用例中的数据参数进行改变,生成测试用例集一;将得到的请求用例和用例规则库中的用例类型进行组合匹配,生成测试用例集二;其中,用例规则库中的用例类型包括:环境错误规则用例、共识算法消息规则用例、共识算法角色规则用例、共识状态规则用例;将测试用例集一和测试用例集二的并集作为测试用例集。3.如权利要求2所述的方法,其特征在于,所述将得到的请求用例和用例规则库中的用例类型进行组合匹配,生成测试用例集二,具体包括:通过Pairwise算法对得到的请求用例和用例规则库中的用例类型进行组合,生成测试用例集二。4.如权利要求1所述的方法,其特征在于,所述将所述测试用例集发送给相应前置节点,以使该相应前置节点将测试用例集透传给与该前置节点连接的区块链节点之前,所述方法还包括:若接收到的共识请求含有签名,则使用预置的密钥对测试用例集再次签名。5.如权利要求1所述的方法,其特征在于,所述接收各其它前置节点返回的执行报告,具体包括:针对各相应前置节点对应的区块链节点,执行:接收该区块链节点返回的测试用例的测试报告,所述测试报告为该区块链节点逐一执行测试用例集中的测试用例时每执行完一个测试用例后发送的;将该区块链节点返回的测试用例集中的各测试用例的测试报告的并集作为该区块链节点的执...

【专利技术属性】
技术研发人员:李贲余兴华殷舒刘胜陈正徐加明
申请(专利权)人:联动优势科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1