本申请涉及区块链,特别是涉及基于区块链平台的端对端测试方法、装置、计算机设备和存储介质。
背景技术:
1、大多数应用程序架构都是采用面向服务的体系结构设计的。因而,应用程序与可以在应用程序环境之外的许多子系统或者服务互连。如果任何子系统出现故障,都可能导致整个应用程序陷入瘫痪。为了确保一切正常,需要从头到尾(端到端)测试应用程序的整个流程。在区块链平台中,通过端到端测试,可以验证区块链平台从起点到终点的整个业务流程是否正常,并检测各个组件之间的交互和集成。这有助于确保系统能够完成特定的业务场景或流程,提高系统的可靠性和稳定性。
2、目前的端到端测试方案为:在获取到待测试代码后,基于待测试代码进行横向的端对端测试,从用户的角度进行操作,从头到尾逐步执行每个模块对应的测试用例,从而完成端对端的测试。该方案的缺点在于:需要完成全流程测试,导致测试执行时间长,测试效率低下。
3、针对相关技术中存在需要完成全流程测试,导致测试执行时间长,测试效率低下,目前还没有提出有效的解决方案。
技术实现思路
1、在本实施例中提供了一种基于区块链平台的端对端测试方法、装置、计算机设备和存储介质,以解决相关技术中存在需要完成全流程测试,导致测试执行时间长,测试效率低下的问题。
2、第一个方面,在本实施例中提供了一种基于区块链平台的端对端测试方法,包括:
3、基于预设的标识符,构建每个测试用例的第一执行命令;所述测试用例与所述区块链平台中的模块对应;所述第一执行命令用于调用所述测试用例对对应的所述模块进行测试;所述标识符与所述模块关联;
4、获取待检测代码中的变动信息关联的各待测试模块;
5、基于所述第一执行命令,调用与各所述待测试模块对应的所述测试用例;执行所有调用的所述测试用例,得到测试结果。
6、在其中的一些实施例中,基于预设的标识符,构建每个测试用例的第一执行命令,包括:
7、基于预设的标识符,对所述测试用例的第二执行命令进行优化,得到第一执行命令;所述第一执行命令包括第二执行命令和所述标识符。
8、在其中的一些实施例中,所述标识符由关联模块的模块名称确定。
9、在其中的一些实施例中,基于所述第一执行命令,调用与各所述待测试模块对应的所述测试用例,包括:
10、基于所述第一执行命令中的标识符,搜索出与各所述待测试模块对应的所述测试用例;
11、基于所述第一执行命令中的第二执行命令,调用搜索出的所述测试用例。
12、在其中的一些实施例中,执行所有调用的所述测试用例,得到测试结果,包括:
13、执行所有调用的所述测试用例;
14、在所有调用的所述测试用例全部执行成功时,得到测试成功的测试结果;
15、在所有调用的所述测试用例存在执行失败时,得到测试失败的测试结果,返回对应的代码详情信息。
16、在其中的一些实施例中,在所有调用的所述测试用例存在执行失败时,得到测试失败的测试结果,返回对应的代码详情信息,包括:
17、在所有调用的所述测试用例存在执行失败时,得到测试失败的测试结果,返回端对端测试失败的所述测试用例的失败信息;
18、从所述失败信息中提取与失败原因相关的关键字;
19、基于所述关键字在所述待检测代码中进行搜索,得到代码详情信息;所述代码详情信息包括文件名称和行号。
20、在其中的一些实施例中,获取待检测代码中的变动信息关联的待测试模块,包括:
21、获取待检测代码,将所述待检测代码与参考代码进行比较,得到所述待检测代码中的变动信息;
22、对所述变动信息进行分析,确定与所述变动信息关联的各待测试模块。
23、第二个方面,在本实施例中提供了一种基于区块链平台的端对端测试装置,包括:构建单元、获取单元以及调用执行单元;
24、所述构建单元,用于基于预设的标识符,构建每个测试用例的第一执行命令;所述测试用例与所述区块链平台中的模块对应;所述第一执行命令用于调用所述测试用例对对应的所述模块进行测试;所述标识符与所述模块关联;
25、所述获取单元,用于获取待检测代码中的变动信息关联的各待测试模块;
26、所述调用执行单元,用于基于所述第一执行命令,调用与各所述待测试模块对应的所述测试用例;执行所有调用的所述测试用例,得到测试结果。
27、第三个方面,在本实施例中提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一个方面所述的基于区块链平台的端对端测试方法。
28、第四个方面,在本实施例中提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一个方面所述的基于区块链平台的端对端测试方法。
29、与相关技术相比,在本实施例中提供的基于区块链平台的端对端测试方法、装置、计算机设备和存储介质,通过基于预设的标识符,构建每个测试用例的第一执行命令;测试用例与区块链平台中的模块对应;第一执行命令用于调用所述测试用例对对应的所述模块进行测试;所述标识符与所述模块关联;获取待检测代码中的变动信息关联的各待测试模块;基于第一执行命令,调用与各待测试模块对应的测试用例;执行所有调用的测试用例,得到测试结果,解决了相关技术中存在需要完成全流程测试,导致测试执行时间长,测试效率低下,实现了针对待测试代码中变动部分的相关测试,减少不必要的等待时间和资源浪费,从而提高测试效率。
30、本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
1.一种基于区块链平台的端对端测试方法,其特征在于,包括:
2.根据权利要求1所述的基于区块链平台的端对端测试方法,其特征在于,基于预设的标识符,构建每个测试用例的第一执行命令,包括:
3.根据权利要求2所述的基于区块链平台的端对端测试方法,其特征在于,所述标识符由关联模块的模块名称确定。
4.根据权利要求1所述的基于区块链平台的端对端测试方法,其特征在于,基于所述第一执行命令,调用与各所述待测试模块对应的所述测试用例,包括:
5.根据权利要求1所述的基于区块链平台的端对端测试方法,其特征在于,执行所有调用的所述测试用例,得到测试结果,包括:
6.根据权利要求5所述的基于区块链平台的端对端测试方法,其特征在于,在所有调用的所述测试用例存在执行失败时,得到测试失败的测试结果,返回对应的代码详情信息,包括:
7.根据权利要求1所述的基于区块链平台的端对端测试方法,其特征在于,获取待检测代码中的变动信息关联的待测试模块,包括:
8.一种基于区块链平台的端对端测试装置,其特征在于,包括:构建单元、获取单元以及调用执行单元;
9.一种计算机设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7中任一项所述的基于区块链平台的端对端测试方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的基于区块链平台的端对端测试方法的步骤。