测试区块链存储集群的方法、装置、电子设备和存储介质制造方法及图纸

技术编号:35032998 阅读:13 留言:0更新日期:2022-09-24 23:08
本说明书提供一种测试区块链存储集群的方法、装置、电子设备和存储介质,其中,所述方法应用于与所述区块链存储集群相连的测试节点,所述测试节点维护有外部测试接口,所述区块链存储集群维护有原生测试接口;所述方法包括:接收测试方发送至所述外部测试接口的测试请求,确定所述测试请求对应的测试任务;将所述测试任务对应的调用请求通过所述原生测试接口发送至所述区块链存储集群;从所述原生测试接口接收所述区块链存储集群执行所述调用请求生成的调用应答,基于所述调用应答包含的所述调用请求的执行情况生成所述测试任务对应的测试结果;将包含所述测试结果的测试应答通过所述外部测试接口返回至所述测试方。通过所述外部测试接口返回至所述测试方。通过所述外部测试接口返回至所述测试方。

【技术实现步骤摘要】
测试区块链存储集群的方法、装置、电子设备和存储介质


[0001]本说明书实施例属于区块链
,尤其涉及一种测试区块链存储集群的方法、装置、电子设备和存储介质。

技术介绍

[0002]区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链系统中按照时间顺序将数据区块以顺序相连的方式组合成链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。
[0003]在区块链技术中,区块链存储集群作为区块链底层技术平台中的一个重要组件,负责持久化存储链上的区块、交易、状态、历史读写集等区块链数据,并对外提供上述数据的查询功能。目前,对区块链存储集群相关的测试方案是从链上交易出发,通过执行完整的链上交易过程、共识过程以及区块同步过程,以测试区块链存储集群的相关功能。然而,这样的测试方案虽然能够完成对区块链存储集群一部分功能的校验,但是测试角度是从链上系统整体性的角度出发,其测试过程中涉及的对区块链存储集群的调用方式较为单一,无法对区块链存储集群进行充分测试,故缺乏测试的针对性。此外,由于传统测试方案本质上是模拟执行链上交易的全过程,因此需要部署一套完整的区块链平台测试环境,故缺乏测试的便捷性。

技术实现思路

[0004]本专利技术的目的在于提供一种测试区块链存储集群的方法、装置、电子设备和存储介质。
[0005]根据本说明书一个或多个实施例的第一方面,提出了一种测试区块链存储集群的方法,应用于与所述区块链存储集群相连的测试节点,所述测试节点维护有外部测试接口,所述区块链存储集群维护有原生测试接口;所述方法包括:
[0006]接收测试方发送至所述外部测试接口的测试请求,确定所述测试请求对应的测试任务;
[0007]将所述测试任务对应的调用请求通过所述原生测试接口发送至所述区块链存储集群;
[0008]从所述原生测试接口接收所述区块链存储集群执行所述调用请求生成的调用应答,基于所述调用应答包含的所述调用请求的执行情况生成所述测试任务对应的测试结果;
[0009]将包含所述测试结果的测试应答通过所述外部测试接口返回至所述测试方。
[0010]根据本说明书一个或多个实施例的第二方面,提出了一种测试区块链存储集群的装置,应用于与所述区块链存储集群相连的测试节点,所述测试节点维护有外部测试接口,所述区块链存储集群维护有原生测试接口;所述装置包括:
[0011]测试请求接收单元,用于接收测试方发送至所述外部测试接口的测试请求,确定
所述测试请求对应的测试任务;
[0012]调用请求发送单元,用于将所述测试任务对应的调用请求通过所述原生测试接口发送至所述区块链存储集群;
[0013]测试结果生成单元,用于从所述原生测试接口接收所述区块链存储集群执行所述调用请求生成的调用应答,基于所述调用应答包含的所述调用请求的执行情况生成所述测试任务对应的测试结果;
[0014]测试应答返回单元,将包含所述测试结果的测试应答通过所述外部测试接口返回至所述测试方。
[0015]根据本说明书一个或多个实施例的第三方面,提出了一种电子设备,包括:
[0016]处理器;
[0017]用于存储处理器可执行指令的存储器;
[0018]其中,所述处理器通过运行所述可执行指令以实现如第一方面所述的方法。
[0019]根据本说明书一个或多个实施例的第四方面,提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如第一方面所述方法的步骤。
[0020]本说明书实施例中的测试节点通过维护外部测试接口与测试方相连,同时通过区块链存储集群的原生测试接口与区块链存储集群相连,使得测试方可以直接通过测试节点维护的外部测试接口实现针对区块链存储集群的测试,而不再通过模拟区块链交易执行过程的方式实现,因此本说明书实施例涉及的测试方案的实现无需依赖部署完整的区块链平台测试环境,具有测试的便捷性;另外,由于测试任务针对于区块链存储集群且不是区块链交易执行后的衍生过程,故具有较高的测试的针对性与自由度,能够实现对区块链存储集群的充分测试。
附图说明
[0021]为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0022]图1是一示例性实施例提供的一种测试区块链存储集群的方法的流程图。
[0023]图2是一示例性实施例提供的一种测试区块链存储集群的系统架构图。
[0024]图3是一示例性实施例提供的一种设备的结构示意图。
[0025]图4是一示例性实施例提供的一种测试区块链存储集群的装置的框图。
具体实施方式
[0026]为了使本
的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
[0027]图1是一示例性实施例提供的一种测试区块链存储集群的方法的流程图。该方法
应用于与所述区块链存储集群相连的测试节点,所述测试节点维护有外部测试接口,所述区块链存储集群维护有原生测试接口;所述方法包括:
[0028]S102:接收测试方发送至所述外部测试接口的测试请求,确定所述测试请求对应的测试任务。
[0029]图2是一示例性实施例提供的一种测试区块链存储集群的系统架构图。如图2所示,区块链存储集群维护有原生测试接口,在传统测试方案中,区块链存储集群与完整的区块链测试平台通过原生测试接口相连,而在本说明书实施例中,区块链存储集群与轻量级的测试节点通过原生测试接口相连,由于测试节点未部署完整的区块链平台测试环境,而仅部署有针对区块链存储集群进行管理的存储服务测试环境,该存储服务测试环境仅提供有针对原生测试接口的功能、性能、压力测试的能力,而不支持交易共识、执行交易、交易成块、区块上链等操作,因此本说明书实施例所涉及的测试方案对测试环境的要求较低。
[0030]本说明书实施例所涉及的区块链存储集群包含有一个或多个数据库,用于对区块链数据进行存储管理,所述区块链数据至少包括区块数据、状态数据和/或事件数据。上述存储管理包括对数据库中的区块链数据进行各类数据库操作,包括读取数据、写入数据、修改或更新数据、删除数据。本说明书实施例所涉及的原生测试接口可以包括一个或多个,在原生测试接口包括多个时,其中每一个原生测试接口对应于实现一类特定的数据库操作。
[0031]本说明书实施例所涉及的区块链数据包括区块数据、状态数据、事件数据和历史读写集等。其中本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种测试区块链存储集群的方法,应用于与所述区块链存储集群相连的测试节点,所述测试节点维护有外部测试接口,所述区块链存储集群维护有原生测试接口;所述方法包括:接收测试方发送至所述外部测试接口的测试请求,确定所述测试请求对应的测试任务;将所述测试任务对应的调用请求通过所述原生测试接口发送至所述区块链存储集群;从所述原生测试接口接收所述区块链存储集群执行所述调用请求生成的调用应答,基于所述调用应答包含的所述调用请求的执行情况生成所述测试任务对应的测试结果;将包含所述测试结果的测试应答通过所述外部测试接口返回至所述测试方。2.根据权利要求1所述的方法,所述执行情况用于表征所述调用请求是否执行成功。3.根据权利要求2所述的方法,所述基于所述调用应答包含的所述调用请求的执行情况生成所述测试任务对应的测试结果,包括:在所述执行情况用于表征所述调用请求执行成功的情况下,生成用于表征所述测试任务测试成功的测试结果,否则,生成用于表征所述测试任务测试失败的测试结果。4.根据权利要求1所述的方法,所述调用请求包括数据写入请求、数据读取请求、数据修改请求和/或数据删除请求。5.根据权利要求4所述的方法,在所述调用请求为所述数据读取请求的情况下,所述调用应答包含所述数据读取请求所指示的存储位置上存储的数据。6.根据权利要求4所述的方法,所述测试任务为数据迁移任务,所述调用请求包括第一数据读取请求、第一数据写入请求和第一数据删除请求,所述调用应答包括第一数据读取请求对应的第一调用应答、第一数据写入请求对应的第二调用应答和第一数据删除请求对应的第三调用应答;所述将所述测试任务对应的调用请求通过所述原生测试接口发送至所述区块链存储集群,包括:将用于使所述区块链存储集群在第一存储位置读取第一数据的第一数据读取请求通过所述原生测试接口发送至所述区块链存储集群,并在接收到包含第一数据的第一调用应答的情况下,生成用于使所述区块链存储集群在第二存储位置写入第一数据的第一数据写入请求以及用于使所述区块链存储集群在第一存储位置删除第一数据的第一数据删除请求;将第一数据写入请求和第一数据删除请求通过所述原生测试接口发送至所述区块链存储集群。7.根据权利要求4所述的方法,所述测试任务为数据回放任务,所述调用请求包括第二数据读取请求、第二数据写入请求、第二数据删除请求、第三数据写入请求和第三数据读取请求,所述调用应答包括第二数据读取请求对应的第四调用应答、第二数据写入请求对应的第五调用应答、第二数据删除请求对应的第六调用应答、第三数据写入请求对应的第七调用应答和第三数据读取请求对应的第八调用应答;所述将所述测试任务对应的调用请求通过所述原生测试...

【专利技术属性】
技术研发人员:陈新张兆勇方辉赵远妮蒋志勇
申请(专利权)人:蚂蚁区块链科技上海有限公司
类型:发明
国别省市:

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

1