针对区块链的测试方法、装置、设备和存储介质制造方法及图纸

技术编号:39034514 阅读:12 留言:0更新日期:2023-10-10 11:47
本申请一个或多个实施例提供一种针对区块链的测试方法、装置、设备和存储介质,该方法应用于针对区块链进行测试的客户端;针对区块链进行测试的服务端维护了交易节点;交易节点为基于与区块链支持的交易类型相关的交易接口创建的可视化节点;该方法包括:获取服务端维护的交易节点,并通过可视化界面将服务端维护的交易节点向用户输出;获取用户在可视化界面输出的交易节点中选择的交易节点,以及为所选择的交易节点中的各个交易节点指定的与其他交易节点之间的关联关系;基于获取到的交易节点和关联关系生成测试模板,并将测试模板发送至服务端进行维护,以使区块链的测试方基于服务端维护的测试模板针对区块链进行测试。服务端维护的测试模板针对区块链进行测试。服务端维护的测试模板针对区块链进行测试。

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


[0001]本申请一个或多个实施例涉及区块链
,尤其涉及一种针对区块链的测试方法、装置、设备和存储介质。

技术介绍

[0002]区块链(Blockchain)是分布式数据存储、点对点传输、共识协议、加密算法等计算机技术的新型应用模式。区块链系统中按照时间顺序将数据区块以顺序相连的方式组合成链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。由于区块链具有去中心化、信息不可篡改、自治性等特性,使得区块链的应用越来越广泛。
[0003]随之而来的,是针对区块链进行测试的需求,尤其是针对区块链进行功能测试的需求。针对区块链的功能测试,除了基于单交易的功能验证外,通常还需要结合应用场景,基于一系列交易进行端到端测试,才能实现较为完备的功能质量保障。通常,在端到端测试中,一系列交易具有执行顺序上的依赖关系,并且需要对区块链上的交易执行结果进行解析。现如今,具体如何针对区块链进行测试,已经成为了备受关注的问题。

技术实现思路

[0004]本申请一个或多个实施例提供技术方案如下:
[0005]本申请提供一种针对区块链的测试方法,所述方法应用于针对区块链进行测试的客户端;针对所述区块链进行测试的服务端维护了交易节点;所述交易节点为基于与所述区块链支持的交易类型相关的交易接口创建的可视化节点;
[0006]所述方法包括:
[0007]获取所述服务端维护的所述交易节点,并通过可视化界面将所述服务端维护的所述交易节点向用户输出;
[0008]获取用户在所述可视化界面输出的交易节点中选择的交易节点,以及为所选择的交易节点中的各个交易节点指定的与其他交易节点之间的关联关系;
[0009]基于获取到的交易节点和关联关系生成测试模板,并将所述测试模板发送至所述服务端进行维护,以使所述区块链的测试方基于所述服务端维护的所述测试模板针对所述区块链进行测试。
[0010]本申请还提供一种针对区块链的测试方法,所述方法应用于针对区块链进行测试的服务端;所述服务端维护了用于针对所述区块链进行测试的测试模板;所述测试模板中包含交易节点,以及用户为所述交易节点中的各个交易节点指定的与其他交易节点之间的关联关系;所述交易节点为基于与所述区块链支持的交易类型相关的交易接口创建的可视化节点;
[0011]所述方法包括:
[0012]接收针对所述区块链进行测试的客户端发送的测试请求;其中,所述测试请求包括用户在所述服务端维护的所述测试模板中选择的测试模板的模板标识,以及用户为所述
测试模板中包含的各个交易节点指定的输入参数和输出参数;
[0013]确定与所述测试请求中包含的模板标识对应的测试模板,并对所述测试模板进行解析,以确定所述测试模板中包含的交易节点和关联关系;
[0014]根据所述测试模板中包含的关联关系,确定与所述测试模板中包含的交易节点对应的交易的执行顺序,并按照所述执行顺序,依次根据所述测试请求中包含的输入参数,生成与所述测试模板中包含的各个交易节点对应的交易;
[0015]将所述交易发送给所述区块链的节点设备,以使所述区块链的节点设备执行所述交易;
[0016]基于所述交易的执行结果和所述测试请求中包含的输出参数,确定针对所述区块链的测试结果。
[0017]本申请还提供一种针对区块链的测试装置,所述装置应用于针对区块链进行测试的客户端;针对所述区块链进行测试的服务端维护了交易节点;所述交易节点为基于与所述区块链支持的交易类型相关的交易接口创建的可视化节点;
[0018]所述装置包括:
[0019]第一输出模块,获取所述服务端维护的所述交易节点,并通过可视化界面将所述服务端维护的所述交易节点向用户输出;
[0020]第一获取模块,获取用户在所述可视化界面输出的交易节点中选择的交易节点,以及为所选择的交易节点中的各个交易节点指定的与其他交易节点之间的关联关系;
[0021]第一发送模块,基于获取到的交易节点和关联关系生成测试模板,并将所述测试模板发送至所述服务端进行维护,以使所述区块链的测试方基于所述服务端维护的所述测试模板针对所述区块链进行测试。
[0022]本申请还提供一种针对区块链的测试装置,所述装置应用于针对区块链进行测试的服务端;所述服务端维护了用于针对所述区块链进行测试的测试模板;所述测试模板中包含交易节点,以及用户为所述交易节点中的各个交易节点指定的与其他交易节点之间的关联关系;所述交易节点为基于与所述区块链支持的交易类型相关的交易接口创建的可视化节点;
[0023]所述装置包括:
[0024]第一接收模块,接收针对所述区块链进行测试的客户端发送的测试请求;其中,所述测试请求包括用户在所述服务端维护的所述测试模板中选择的测试模板的模板标识,以及用户为所述测试模板中包含的各个交易节点指定的输入参数和输出参数;
[0025]第一确定模块,确定与所述测试请求中包含的模板标识对应的测试模板,并对所述测试模板进行解析,以确定所述测试模板中包含的交易节点和关联关系;
[0026]生成模块,根据所述测试模板中包含的关联关系,确定与所述测试模板中包含的交易节点对应的交易的执行顺序,并按照所述执行顺序,依次根据所述测试请求中包含的输入参数,生成与所述测试模板中包含的各个交易节点对应的交易;
[0027]第一发送模块,将所述交易发送给所述区块链的节点设备,以使所述区块链的节点设备执行所述交易;
[0028]第二确定模块,基于所述交易的执行结果和所述测试请求中包含的输出参数,确定针对所述区块链的测试结果。
[0029]本申请还提供一种电子设备,包括:
[0030]处理器;
[0031]用于存储处理器可执行指令的存储器;
[0032]其中,所述处理器通过运行所述可执行指令以实现如上述任一项所述方法的步骤。
[0033]本申请还提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如上述任一项所述方法的步骤。
[0034]在上述技术方案中,客户端可以通过可视化界面,将服务端维护的基于与待测试的区块链支持的交易类型相关的交易接口创建的交易节点向用户输出,进而可以获取用户在该可视化界面输出的交易节点中选择的交易节点,以及为所选择的交易节点中的各个交易节点指定的与其他交易节点之间的关联关系,后续该客户端可以基于获取到的交易节点和关联关系生成测试模板,并将生成的测试模板发送至该服务端进行维护,这样就可以使该区块链的测试方基于该服务端维护的该测试模板针对该区块链进行测试。
[0035]采用上述方式,一方面,可以由服务端维护由用户预先为待测试的区块链构建的测试模板,从而使区块链的测试方可以基于该服务端维护的测试模板针对该区块链进行测试,而无需在每次针对该区块链进行测试时重新为该区块链构建一系列交易,由此可以提高针对区块链的测试的效率;另一方面,为待测试的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种针对区块链的测试方法,所述方法应用于针对区块链进行测试的客户端;针对所述区块链进行测试的服务端维护了交易节点;所述交易节点为基于与所述区块链支持的交易类型相关的交易接口创建的可视化节点;所述方法包括:获取所述服务端维护的所述交易节点,并通过可视化界面将所述服务端维护的所述交易节点向用户输出;获取用户在所述可视化界面输出的交易节点中选择的交易节点,以及为所选择的交易节点中的各个交易节点指定的与其他交易节点之间的关联关系;基于获取到的交易节点和关联关系生成测试模板,并将所述测试模板发送至所述服务端进行维护,以使所述区块链的测试方基于所述服务端维护的所述测试模板针对所述区块链进行测试。2.根据权利要求1所述的方法,所述方法还包括:获取所述服务端维护的测试模板,并通过所述可视化界面将所述服务端维护的测试模板向用户输出;获取用户在所述可视化界面输出的测试模板中选择的测试模板,并构建针对所述区块链的测试请求;其中,所述测试请求包括所述测试模板的模板标识,以及用户为所述测试模板中的各个交易节点指定的输入参数和输出参数;将所述测试请求发送给所述区块链的测试方,以使所述区块链的测试方基于所述服务端维护的与所述测试请求中的模板标识对应的测试模板,以及所述测试请求中的输入参数和输出参数,针对所述区块链进行测试。3.根据权利要求1所述的方法,所述服务端还维护了所述区块链支持的交易类型;所述方法还包括:响应于用户发起的节点新增操作,向所述服务端发送节点新增请求,以使所述服务端返回所述区块链支持的交易类型;通过所述可视化界面将所述区块链支持的交易类型向用户输出;获取用户在所述可视化界面输出的交易类型中选择的交易类型,并将获取到的交易类型发送给所述服务端,以使所述服务端基于与所述交易类型相关的交易接口,创建由用户新增的交易节点。4.根据权利要求1所述的方法,所述获取用户在所述可视化界面输出的交易节点中选择的交易节点,以及为所选择的交易节点中的各个交易节点指定的与其他交易节点之间的关联关系,包括:获取用户在所述可视化界面输出的交易节点中选择的交易节点、为所选择的交易节点指定的连接顺序,以及为相互连接的两个交易节点中的后一个交易节点指定的,由前一个交易节点传递给该交易节点的参数的参数类型。5.一种针对区块链的测试方法,所述方法应用于针对区块链进行测试的服务端;所述服务端维护了用于针对所述区块链进行测试的测试模板;所述测试模板中包含交易节点,以及用户为所述交易节点中的各个交易节点指定的与其他交易节点之间的关联关系;所述交易节点为基于与所述区块链支持的交易类型相关的交易接口创建的可视化节点;所述方法包括:
接收针对所述区块链进行测试的客户端发送的测试请求;其中,所述测试请求包括用户在所述服务端维护的所述测试模板中选择的测试模板的模板标识,以及用户为所述测试模板中包含的各个交易节点指定的输入参数和输出参数;确定与所述测试请求中包含的模板标识对应的测试模板,并对所述测试模板进行解析,以确定所述测试模板中包含的交易节点和关联关系;根据所述测试模板中包含的关联关系,确定与所述测试模板中包含的交易节点对应的交易的执行顺序,并按照所述执行顺序,依次根据所述测试请求中包含的输入参数,生成与所述测试模板中包含的各个交易节点对应的交易;将所述交易发送给所述区块链的节点设备,以使所述区块链的节点设备执行所述交易;基于所述交易的执行结果和所述测试请求中包含的输出参数,确定针对所述区块链的测试结果。6.根据权利要求5所述的方法,所述服务端还维护了所述区块链支持的交易类型;所述方法还包括:接收所述客户端响应于用户发起的节点新增操作,发送的节点新增请求;将所述区块链支持的交易类型返回给所述客户端,以使所述客户端通过可视化界面将所述区块链支持的交易类型向用户输出,并将用户在所述可视化界面输出的交易类型中选择的交易类型发送给所述服务端;基于与所述交易类型相关的交易接口,创建由用户新增的交易节点。7.根据权利要求5所述的方法,用...

【专利技术属性】
技术研发人员:马玉
申请(专利权)人:蚂蚁区块链科技上海有限公司
类型:发明
国别省市:

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

1