CN114385484A - 区块链软件兼容性测试方法、装置、电子设备和存储介质 - Google Patents
区块链软件兼容性测试方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN114385484A CN114385484A CN202111480496.3A CN202111480496A CN114385484A CN 114385484 A CN114385484 A CN 114385484A CN 202111480496 A CN202111480496 A CN 202111480496A CN 114385484 A CN114385484 A CN 114385484A
- Authority
- CN
- China
- Prior art keywords
- test
- block chain
- resource information
- software
- cluster
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及一种区块链软件兼容性测试方法、装置、电子设备和存储介质,应用于区块链技术领域,其中,方法包括:获取到对待测区块链软件的测试请求后,获取测试请求对应的目标测试资源信息;根据目标测试资源信息部署测试待测区块链软件的区块链测试集群;将待测试区块链软件的测试数据写入区块链测试集群,测试数据是对预设的测试用例执行完后得到的;监控并获取区块链测试集群的链状态,得到测试结果。以解决现有技术中,需要人工介入进行多平台的区块链服务部署和系统移植,在支持的平台数目逐渐增加的情况下,测试效率和质量较差的问题。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种区块链软件兼容性测试方法、装置、电子设备和存储介质。
背景技术
兼容性测试是指测试软件在特定的硬件产台上、不同的应用软件之间、不同的测试平台上、不同的网络等环境中是否能很好地运行的测试。因此,通过兼容性测试判断某软件在某一特定环境下与各种软件的协调性,以及软件之间能否很好的运作是十分必要的。
相关技术中,区块链软件兼容性测试的测试方法由人工介入,将区块链系统部署在不同的测试平台上,进行中间件或数据库之间的系统移植,测试区块链系统是否能运行在不同测试平台上,并正常处理事务。
但是,人工介入进行多平台的区块链服务部署和系统移植,在支持的平台数目逐渐增加的情况下,测试效率和质量较差。
发明内容
本申请提供了一种区块链软件兼容性测试方法、装置、电子设备和存储介质,用以解决现有技术中,需要人工介入进行多平台的区块链服务部署和系统移植,在支持的平台数目逐渐增加的情况下,测试效率和质量较差的问题。
第一方面,本申请实施例提供了一种区块链软件兼容性测试方法,包括:
在获取到对待测区块链软件的测试请求后,获取所述测试请求对应的目标测试资源信息;
根据所述目标测试资源信息部署测试所述待测区块链软件的区块链测试集群;
将所述待测区块链软件的测试数据写入所述区块链测试集群,所述测试数据是对预设的测试用例执行完后得到的;
监控并获取所述区块链测试集群的链状态,得到测试结果。
可选的,所述获取所述测试请求对应的目标测试资源信息,包括:
提取所述测试请求携带的测试条件;
从预设的测试资源库中,获取与所述测试条件对应的所述目标测试资源信息。
可选的,所述从预设的测试资源库中,获取与所述测试条件对应的所述目标测试资源信息,包括:
若所述测试条件中包括待测区块链软件运行的测试平台的系统类型和系统版本,从预设的测试资源库中获取与所述系统类型和所述系统版本对应的第一测试资源信息,确定第一测试资源信息为所述目标测试资源信息;
若所述测试条件中不包括待测区块链软件运行的测试平台的系统类型和系统版本,从所述预设的测试资源库中获取各系统类型的最新版本的第二测试资源信息,确定第二测试资源信息为所述目标测试资源信息。
可选的,所述根据所述目标测试资源信息部署测试所述待测区块链软件的区块链测试集群,包括:
根据所述目标测试资源信息部署预设的至少两个测试平台;
将区块链节点部署在所述测试平台;
确定所述区块链节点构成的集群为所述区块链测试集群。
可选的,所述根据所述目标测试资源信息部署预设的至少两个测试平台,包括:
若所述目标测试资源信息为一种系统版本和系统类型的测试资源信息,按照所述目标测试资源信息部署每个所述测试平台,各所述测试平台的系统版本和系统类型相同;
若所述目标测试资源信息为不同系统版本和系统类型的测试资源信息,将不同系统版本和系统类型的目标测试资源信息分别部署在所述测试平台上,各所述测试平台的系统版本和系统类型不同。
可选的,所述将待测试区块链软件的测试数据写入所述区块链测试集群之前,还包括:
将历史测试数据写入到所述区块链测试集群中;其中,所述历史测试数据包括至少一个历史版本的所述区块链软件进行测试时产生的测试数据,所述历史版本的区块链软件为在所述待测试区块链软件之前发布的版本的区块链软件。
可选的,所述监控并获取所述区块链测试集群的链状态,得到测试结果之后,还包括:
显示所述测试结果,所述测试结果中包括所述预设的测试用例的描述信息、预设的测试用例的个数、所述链状态和兼容性测试通过情况。
第二方面,本申请实施例提供了一种区块链软件兼容性测试装置,包括:
获取模块,用于在获取到对待测区块链软件的测试请求后,获取所述测试请求对应的目标测试资源信息;
部署模块,用于根据所述目标测试资源信息部署测试所述待测区块链软件的区块链测试集群;
上链模块,用于将待测试区块链软件的测试数据写入所述区块链测试集群,所述测试数据是对预设的测试用例执行完后得到的;
监控模块,用于监控并获取所述区块链测试集群的链状态,得到测试结果。
第三方面,本申请实施例提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述存储器中所存储的程序,实现第一方面所述的区块链软件兼容性测试方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的区块链软件兼容性测试方法。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:本申请实施例提供的该方法,通过在获取到对待测区块链软件的测试请求后,获取测试请求对应的目标测试资源信息;根据目标测试资源信息部署测试待测区块链软件的区块链测试集群;将待测试区块链软件的测试数据写入区块链测试集群,测试数据是对预设的测试用例执行完后得到的;监控并获取区块链测试集群的链状态,得到测试结果。如此,在获取到待测区块链软件的测试请求后,自动根据测试请求对应的目标测试资源信息,部署区块链测试集群,并进一步在待测区块链软件的测试数据写入区块链测试集群后,便可以监控并获取到区块链测试集群的链状态,从而完成对待测区块链软件的测试,无需人为参与,能够自动进行区块链测试集群的部署提高了测试效果,以及测试质量。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的区块链软件兼容性测试方法的应用场景图;
图2为本申请一实施例提供的区块链软件兼容性测试方法的模块图;
图3为本申请一实施例提供的区块链软件兼容性测试方法的流程图;
图4为本申请另一实施例提供的区块链软件兼容性测试方法的部署区块链测试集群的流程图;
图5为本申请另一实施例提供的区块链软件兼容性测试方法的流程图;
图6为本申请一实施例提供的区块链软件兼容性测试装置的结构图;
图7为本申请一实施例提供的电子设备的结构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
在对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
区块链(Blockchain),是由区块(Block)形成的加密的、链式的交易的存储结构。
测试用例:测试用例(Test Case)是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。
历史上链数据:是指待测试的区块链软件之前的所有版本的区块链软件生成的上链数据。
根据本申请一实施例提供了一种区块链软件兼容性测试方法。可选地,在本申请实施例中,上述区块链软件兼容性测试方法可以应用于如图1所示的由终端101和服务器102所构成的硬件环境中。如图1所示,服务器102通过网络与终端101进行连接,可用于为终端或终端上安装的客户端提供服务(如应用服务等),可在服务器上或独立于服务器设置数据库,用于为服务器102提供数据存储服务,上述网络包括但不限于:广域网、城域网或局域网,终端101并不限定于PC、手机、平板电脑等。
本申请实施例的区块链软件兼容性测试方法可以由服务器102来执行,也可以由终端101来执行,还可以是由服务器102和终端101共同执行。其中,终端101执行本申请实施例的区块链软件兼容性测试方法,也可以是由安装在其上的客户端来执行。
以服务器执行本申请实施例的区块链软件兼容性测试方法为例,参见图2,可以通过在服务器上设置区块链多平台集群部署模块和自动化测试用例执行模块。其中,区块链平台集群部署服务:会根据当前需要测试的版本和当前需要测试的区块链平台,去选取相应的测试包,工具包和测试环境资源,进行所测平台的区块链环境部署,集群部署提供两种可选模式:第一种模式是一个集群内的区块链节点部署在相同的平台上,另一种模式是一个集群内的区块链节点分布部署在不同的平台上。其中,自动化测试用例执行模块采用了通用的自动化测试工具的流程,在正式执行自动化测试用例前,进行了区块链历史数据上链的操作,确保历史区块链数据能在新的区块链平台上查询和使用;最终的测试报告收集和展示部分,采用了简洁的汇总测试报告,报告中展示本次平台兼容性测试的集群中区块链节点依赖的平台,测试用例的简单描述和总的执行用例的个数,以及最终兼容性测试是否通过的结论。
图3是根据本申请实施例的一种可选的区块链软件兼容性测试方法的流程示意图,如图3所示,该方法的流程可以包括以下步骤:
步骤301、在获取到对待测区块链软件的测试请求后,获取测试请求对应的目标测试资源信息。
一些实施例中,测试请求可以是待测区块链软件在上传到服务器后自动触发的,或者是由相关测试人员在服务器的显示界面上,通过相应按钮触发生成的。
在一个具体实施例中,获取测试请求对应的目标测试资源信息,包括:
提取测试请求携带的测试条件;从预设的测试资源库中,获取与测试条件对应的目标测试资源信息。
其中,测试请求中携带了待测区块链软件的测试条件,例如,该待测区块链软件的测试的版本以及测试该待测区块链软件兼容性的操作系统的类型等。服务器在获取到测试请求中的测试条件后,可以根据该测试条件,从预设的测试资源库中获取到与该测试条件对应的目标测试资源信息。
其中,预设的测试资源库中包括版本选择模块、系统类型选择模块和系统工具选择模块。服务器根据测试条件从测试库中选取对应的目标测试资源信息。
示例性的,测试条件为在Centos7操作系统中进行测试,其中,Centos为待测区块链软件需要测试的操作系统的类型,7为该操作系统的版本。在得到该测试条件后,从预设的测试资源库提取操作系统为Centos7的目标测试资源信息。
在一个可选实施例中,从预设的测试资源库中,获取与测试条件对应的目标测试资源信息,具体可以包括:
若测试条件中包括待测区块链软件运行的测试平台的系统类型和系统版本,从预设的测试资源库中获取与系统类型和系统版本对应的第一测试资源信息,确定第一测试资源信息为目标测试资源信息;
若测试条件中不包括待测区块链软件运行的测试平台的系统类型和系统版本,从预设的测试资源库中获取各系统类型的最新版本的第二测试资源信息,确定第二测试资源信息为目标测试资源信息。
一些实施例中,若测试条件中指定了待测区块链需要测试的系统类型和系统的版本,可以按照执行的系统类型和系统的版本从预设的测试资源库中获取对应的目标测试资源信息。若测试条件中未指定待测区块链需要测试的系统类型和系统的版本,可以对该待测区块链软件进行预设测试资源库中所有测试的系统类型都进行测试,随着系统的更新,通常待测区块链软件在投放后,往往应用在最新版本的系统上,因此,在未指定测试的系统类型和系统版本时,可以将预设的测试资源库中各系统类型的最新版本的测试资源信息作为目标测试资源信息。
其中,目标测试资源信息中可以但不限于包括系统类型和系统版本对应的测试包,工具包和测试环境资源。
步骤302、根据目标测试资源信息部署测试待测区块链软件的区块链测试集群。
一些实施例中,在获取到目标测试资源信息后,便可以根据选取的目标测试资源进行待测区块链软件的区块链测试集群(该区块链测试集群作为待测区块链软件的测试环境)部署。
在一个可选实施例中,根据目标测试资源信息部署测试待测区块链软件的区块链测试集群,包括:
根据目标测试资源信息部署预设的至少两个测试平台;将区块链节点部署在测试平台;确定区块链节点构成的集群为区块链测试集群。
一些实施例中,根据目标测试资源信息的不同,可以将区块链测试集群的部署分为两种。一种模式是单一部署,即在一个集群内的区块链节点部署在相同的测试平台上,另一种模式是混合部署,即在一个集群内的区块链节点,分别部署在不同的测试平台上。其中,相同的测试平台是指各测试平台的系统类型和系统版本均相同,不同的测试平台是指,一个集群内的测试平台的系统类型具有多种。
具体的,在服务器中预设有至少两个测试平台,通过目标测试资源信息对测试平台的部署,使每个测试平台具有相应的系统类型和系统版本。进而将区块链节点部署在测试平台上,从而得到区块链节点构成的区块链测试集群。
在一个可选实施例中,根据目标测试资源信息部署预设的至少两个测试平台,包括:
若目标测试资源信息为一种系统版本和系统类型的测试资源信息,按照目标测试资源信息部署每个测试平台,各测试平台的系统版本和系统类型相同;
若目标测试资源信息为不同系统版本和系统类型的测试资源信息,将不同系统版本和系统类型的目标测试资源信息分别部署在测试平台上,各测试平台的系统版本和系统类型不同。
具体的,在目标测试资源信息不同时,部署测试平台的具体过程也不相同。
其中,在目标测试资源信息为一种系统版本和系统类型的测试资源信息时,指示服务器为单一部署模式,相应的,将测试平台按照目标测试资源信息中的测试资源信息部署测试平台,从而测试平台被配置为系统版本和系统类型的测试平台。
在目标测试资源信息为不同系统版本和系统类型的测试资源信息时,指示服务器为混合部署模式,相应的,将目标测试资源信息中的每一种系统版本和系统类型的测试资源信息部署其中一个测试平台,从而使所有测试平台能够包括所有目标测试资源信息中对应的系统版本和系统类型的操作系统。
示例性的,参见图4,在部署模式为单一部署模式时,根据测试的触发条件,在测试资源库中,进行指定平台和指定版本的选取,如果选取到匹配的测试资源包,就进行自动化部署区块链测试集群。单一模式下,还可以进行多种区块链平台的集群部署,比如部署一套Centos7平台的区块链测试集群和一套Ubuntu16平台的区块链测试集群,两套测试环境可以同时进行测试用例执行,大大提高测试效率,降低对最终兼容性测试结果的等待时间。
在部署模式为混合平台部署时,根据测试的触发条件,若未指定测试平台和相应的版本,则默认采取混合平台部署模式。在混合部署模式中,将获取测试资源库中相应平台的测试资源包的最新版本,进行区块链兼容性测试集群的部署,利用一套集群环境,完成多平台的区块链节点兼容性测试。
步骤303、将待测区块链软件的测试数据写入区块链测试集群,测试数据是对预设的测试用例执行完后得到的。
一些实施例中,在区块链测试集群部署完毕后,待测区块链软件在该区块链测试集群中运行。
在开始执行测试时,有测试用例执行模块采用通用的自动化测试工具的流程,在测试用例执行模块中导入预设的测试用例,并执行该预设的测试用例,得到测试数据,将测试数据上链,从而使区块链测试集群中能够查询和使用该测试数据。
在待测区块链软件执行过程中,服务器会监控区块链测试集群的链状态,若发生状态异常,会将异常情况进行上报。
在一个可选实施例中,将待测试区块链软件的测试数据写入区块链测试集群之前,还包括:
将历史测试数据写入到区块链测试集群中;其中,历史测试数据包括至少一个历史版本的区块链软件进行测试时产生的测试数据,历史版本的区块链软件为在待测试区块链软件之前发布的版本的区块链软件。
一些实施例中,通过将历史测试数据上链,能够是区块链测试集群在测试过程中对历史数据侧查询和使用,从而使得到的测试结果更加准确。
步骤304、监控并获取区块链测试集群的链状态,得到测试结果。
一些实施例中,在测试数据上链后,区块链测试集群根据上链的测试数据进行测试,并在测试过程中,监控区块链测试集群的链状态,得到测试结果。
在一个可选实施例中,监控并获取区块链测试集群的链状态,得到测试结果之后,还包括:
显示测试结果,测试结果中包括预设的测试用例的描述信息、预设的测试用例的个数、链状态和兼容性测试通过情况。
一些实施例中,在测试完成后,会将最终的测试报告汇总,测试报告中汇总了本次区块链软件兼容性测试的集群中区块链节点依赖的测试平台类型、测试用例的简单描述、总的执行测试用例的个数、最终测试集群的状态以及最终兼容性测试是否通过的结论等。
示例性的,参见图5,自动化测试模块流程具体可以包括:
第一、区块链历史数据上链。这属于测试前置操作,先将历史数据上链,方便后续测试用例中对历史数据进行查询和其他相关操作。
第二、按指定顺序执行测试用例。从自动化测试用例库中,筛选测试用例,进行兼容性测试执行。
第三、发送新的交易数据上链。执行上一步的测试过程中,会产生新的交易数据,新的交易产生后,发往区块链测试集群,进行数据上链。
第四、区块链测试集群状态监控。测试过程中,每一步数据上链后,都会触发区块链状态变更,变更也会实时反馈到集群状态监控服务。
第五、测试报告收集和结果展示。测试完成后,会将最终的测试报告汇总,测试报告中汇总了本次平台兼容性测试的集群中区块链节点依赖的平台类型,测试用例的简单描述和总的执行用例的个数,最终测试集群的状态以及最终兼容性测试是否通过的结论。
本申请的区块链软件兼容性测试方法,实现了一套将待测区块链软件自动化部署在不同的操作系统的测试平台上,在测试平台间进行数据库之间的系统移植,执行既定的测试用例,最终得出可视化测试报告:所测区块链系统是否兼容多种被测的操作系统和详细的被测用例的具体信息和测试结果。为了较全面的待测区块链软件的兼容性,该方法所设计的自动化测试用例的来源为功能测试用例回归集的重放,可以对被测对象展开比较全面的测试。
以以下两个具体的实施例,进行示例性说明。
实例一
1)区块链新版本发布,需要测试Centos7平台的兼容性;
2)指定版本和区块链平台,进行单一平台部署,触发自动化部署Centos7的集群环境;
3)测试报告收集模块,记录集群平台信息;
4)历史区块链数据上链;
5)执行测试用例,新数据上链;
6)监控模块对集群状态进行监控,状态异常上报;
7)测试完成后,汇总测试结果。
实例二
1)区块链新版本发布,需要测试所有已知平台的兼容性;
2)指定版本,指定混合平台部署模式,触发自动化部署多平台的集群环境;
3)测试报告收集模块,记录集群平台信息;
4)历史区块链数据上链;
5)执行测试用例,新数据上链;
6)监控模块对集群状态进行监控,状态异常上报;
7)测试完成后,汇总测试结果。
本申请的区块链软件兼容性测试方法,整个环境部署和测试过程,无需人工干预,环境部署-测试执行-环境销毁-报告展示过程效率高,可复用。并且,提供两种兼容性测试模式,能够供不同的兼容性测试需求使用。
基于同一构思,本申请实施例中提供了一种区块链软件兼容性测试装置,该装置的具体实施可参见方法实施例部分的描述,重复之处不再赘述,如图6所示,该装置主要包括:
获取模块601,用于在获取到对待测区块链软件的测试请求后,获取测试请求对应的目标测试资源信息;
部署模块602,用于根据目标测试资源信息部署测试待测区块链软件的区块链测试集群;
上链模块603,用于将待测试区块链软件的测试数据写入区块链测试集群,测试数据是对预设的测试用例执行完后得到的;
监控模块604,用于监控并获取区块链测试集群的链状态,得到测试结果。
基于同一构思,本申请实施例中还提供了一种电子设备,如图7所示,该电子设备主要包括:处理器701、存储器702和通信总线703,其中,处理器701和存储器702通过通信总线703完成相互间的通信。其中,存储器702中存储有可被处理器701执行的程序,处理器701执行存储器702中存储的程序,实现如下步骤:
在获取到对待测区块链软件的测试请求后,获取测试请求对应的目标测试资源信息;
根据目标测试资源信息部署测试待测区块链软件的区块链测试集群;
将待测区块链软件的测试数据写入区块链测试集群,测试数据是对预设的测试用例执行完后得到的;
监控并获取区块链测试集群的链状态,得到测试结果。
上述电子设备中提到的通信总线703可以时外设部件互连标准(PeripheralComponent Interconnect,简称PCI)总线或扩展工业标准结构(Extended IndustryStandard Architecture,简称EISA)总线等。该通信总线703可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器702可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器701的存储装置。
上述的处理器701可以是通用处理器,包括中央处理器(Central ProcessingUnit,简称CPU)、网络处理器(Network Processor,简称NP)等,还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当该计算机程序在计算机上运行时,使得计算机执行上述实施例中所描述的区块链软件兼容性测试方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、微波等)方式向另外一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如软盘、硬盘、磁带等)、光介质(例如DVD)或者半导体介质(例如固态硬盘)等。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种区块链软件兼容性测试方法,其特征在于,包括:
在获取到对待测区块链软件的测试请求后,获取所述测试请求对应的目标测试资源信息;
根据所述目标测试资源信息部署测试所述待测区块链软件的区块链测试集群;
将所述待测区块链软件的测试数据写入所述区块链测试集群,所述测试数据是对预设的测试用例执行完后得到的;
监控并获取所述区块链测试集群的链状态,得到测试结果。
2.根据权利要求1所述的区块链软件兼容性测试方法,其特征在于,所述获取所述测试请求对应的目标测试资源信息,包括:
提取所述测试请求携带的测试条件;
从预设的测试资源库中,获取与所述测试条件对应的所述目标测试资源信息。
3.根据权利要求2所述的区块链软件兼容性测试方法,其特征在于,所述从预设的测试资源库中,获取与所述测试条件对应的所述目标测试资源信息,包括:
若所述测试条件中包括待测区块链软件运行的测试平台的系统类型和系统版本,从预设的测试资源库中获取与所述系统类型和所述系统版本对应的第一测试资源信息,确定第一测试资源信息为所述目标测试资源信息;
若所述测试条件中不包括待测区块链软件运行的测试平台的系统类型和系统版本,从所述预设的测试资源库中获取各系统类型的最新版本的第二测试资源信息,确定第二测试资源信息为所述目标测试资源信息。
4.根据权利要求1所述的区块链软件兼容性测试方法,其特征在于,所述根据所述目标测试资源信息部署测试所述待测区块链软件的区块链测试集群,包括:
根据所述目标测试资源信息部署预设的至少两个测试平台;
将区块链节点部署在所述测试平台;
确定所述区块链节点构成的集群为所述区块链测试集群。
5.根据权利要求4所述的区块链软件兼容性测试方法,其特征在于,所述根据所述目标测试资源信息部署预设的至少两个测试平台,包括:
若所述目标测试资源信息为一种系统版本和系统类型的测试资源信息,按照所述目标测试资源信息部署每个所述测试平台,各所述测试平台的系统版本和系统类型相同;
若所述目标测试资源信息为不同系统版本和系统类型的测试资源信息,将不同系统版本和系统类型的目标测试资源信息分别部署在所述测试平台上,各所述测试平台的系统版本和系统类型不同。
6.根据权利要求1所述的区块链软件兼容性测试方法,其特征在于,所述将待测试区块链软件的测试数据写入所述区块链测试集群之前,还包括:
将历史测试数据写入到所述区块链测试集群中;其中,所述历史测试数据包括至少一个历史版本的所述区块链软件进行测试时产生的测试数据,所述历史版本的区块链软件为在所述待测试区块链软件之前发布的版本的区块链软件。
7.根据权利要求1所述的区块链软件兼容性测试方法,其特征在于,所述监控并获取所述区块链测试集群的链状态,得到测试结果之后,还包括:
显示所述测试结果,所述测试结果中包括所述预设的测试用例的描述信息、预设的测试用例的个数、所述链状态和兼容性测试通过情况。
8.一种区块链软件兼容性测试装置,其特征在于,包括:
获取模块,用于在获取到对待测区块链软件的测试请求后,获取所述测试请求对应的目标测试资源信息;
部署模块,用于根据所述目标测试资源信息部署测试所述待测区块链软件的区块链测试集群;
上链模块,用于将待测试区块链软件的测试数据写入所述区块链测试集群,所述测试数据是对预设的测试用例执行完后得到的;
监控模块,用于监控并获取所述区块链测试集群的链状态,得到测试结果。
9.一种电子设备,其特征在于,包括:处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述存储器中所存储的程序,实现权利要求1-7任一项所述的区块链软件兼容性测试方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任一项所述的区块链软件兼容性测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111480496.3A CN114385484A (zh) | 2021-12-06 | 2021-12-06 | 区块链软件兼容性测试方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111480496.3A CN114385484A (zh) | 2021-12-06 | 2021-12-06 | 区块链软件兼容性测试方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114385484A true CN114385484A (zh) | 2022-04-22 |
Family
ID=81195810
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111480496.3A Pending CN114385484A (zh) | 2021-12-06 | 2021-12-06 | 区块链软件兼容性测试方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114385484A (zh) |
-
2021
- 2021-12-06 CN CN202111480496.3A patent/CN114385484A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109302522B (zh) | 测试方法、装置以及计算机系统和介质 | |
CN109633351B (zh) | 智能it运维故障定位方法、装置、设备及可读存储介质 | |
CN112650688B (zh) | 自动化回归测试方法、关联设备以及计算机程序产品 | |
CN111881014B (zh) | 一种系统测试方法、装置、存储介质及电子设备 | |
US10824541B1 (en) | System and method for test data fabrication | |
CN111949487A (zh) | 一种模块可动态插拔的区块链监控系统及方法 | |
CN111767218B (zh) | 一种用于持续集成的自动化测试方法、设备及存储介质 | |
CN114328250A (zh) | 软件系统自动自检方法、介质和装置 | |
CN114385484A (zh) | 区块链软件兼容性测试方法、装置、电子设备和存储介质 | |
CN111639022A (zh) | 交易测试方法及装置、存储介质、电子装置 | |
CN115037653B (zh) | 业务流量监控方法、装置、电子设备和存储介质 | |
CN113238901B (zh) | 多设备的自动化测试方法及装置、存储介质、计算机设备 | |
CN113934642B (zh) | 一种基于动静态结合的软件兼容性测试方法 | |
CN113300912B (zh) | 一种设备测试方法、装置及电子设备 | |
CN116382674A (zh) | 汽车诊断设备的组件配置方法、设备、介质及电子设备 | |
CN112328481B (zh) | 多任务场景的自动化测试方法、装置、设备及存储介质 | |
CN114968696A (zh) | 指标监控方法、电子设备及芯片系统 | |
US20230216727A1 (en) | Identification of root causes in data processing errors | |
CN114385464A (zh) | 数据输出方法、装置、设备及存储介质 | |
CN114385488A (zh) | 区块链测试方法、装置、设备及存储介质 | |
CN116204410A (zh) | 数据库性能测试方法、装置、电子设备和存储介质 | |
CN115454819A (zh) | 区块链跨链系统的测试方法、装置、设备及存储介质 | |
CN112559561A (zh) | 数据处理方法及相关装置 | |
CN115460109A (zh) | 连接状态检测方法、装置、计算机设备及可读存储介质 | |
CN114866405A (zh) | 模组配置方法、通信模组、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |