本技术涉及计算机软件领域,尤其涉及一种数据处理方法以及相关装置。
背景技术:
1、在计算机软件的开发过程中,为了避免软件运行过程中出现故障,单元测试是软件投入使用前的重要一环,单元测试是对软件中的最小可测试单元进行检查和验证的过程,用于发现代码中的错误和缺陷,确保每个代码单元都可以按照预期工作。其中,单元测试用到的测试用例包括测试过程中执行的一系列操作步骤和这一系列操作步骤的预期结果。
2、但是测试用例的生成主要依赖人工编写,复杂的软件代码篇幅较长,并且代码中也会伴随着嵌套的引用,人工编写会消耗大量的时间和精力。如何提升软件测试的效率,就成了当前需要解决的问题。
技术实现思路
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、在第二方面一种可能的实施方式中,获取单元,还用于获取目标测试单元的预设输入参数和目标测试单元的预设输出参数,预设输入参数与预设输出参数一一对应;
31、交互单元,还用于在目标输入参数为预设输入参数的情况下,根据目标输入参数和目标测试单元确定目标输入参数为预设输出参数。
32、在第二方面一种可能的实施方式中,交互单元,具体用于在目标测试单元中的函数没有输入参数的情况下,运行目标测试单元,获得目标测试单元的目标输出参数;
33、根据目标测试单元和目标输出参数生成目标测试单元的测试用例。
34、在第二方面一种可能的实施方式中,交互单元,具体用于在目标测试单元的测试用例满足预设条件时,执行目标测试单元的测试用例,获得目标测试单元的真实输出参数。
35、在第二方面一种可能的实施方式中,装置还包括生成单元,用于:
36、生成目标测试单元的身份标识;
37、根据目标测试单元的身份标识唯一的标记目标测试单元中的函数,目标测试单元中的函数包含于目标测试单元的词法单元或目标测试单元的类名。
38、本技术第三方面提供一种计算机设备,包括:存储器、处理器以及总线系统;
39、其中,存储器用于存储程序;
40、处理器用于执行存储器中的程序,处理器用于根据程序代码中的指令执行上述各方面的方法;
41、总线系统用于连接存储器以及处理器,以使存储器以及处理器进行通信。
42、本技术的第四方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的方法。
43、本技术的第五方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方面所提供的方法。
44、从以上技术方案可以看出,本技术实施例具有以下优点:
45、本技术实施例中,首先从目标源代码选取最小测试单元作为目标测试单元,然后再基于目标测试单元中函数确定目标测试单元的测试用例,运行目标测试单元的测试用例获得目标测试单元的实际输出参数,基于目标测试单元的实际输出参数和目标测试单元的目标输出参数分析获得目标源代码的检测结果,并通过源码检测界面展示该目标源代码的检测结果,目标测试单元的测试用例中携带有目标测试单元的目标输出参数。无需人工介入即可对目标源代码中的任一个最小测试单元对应的测试用例的编写,大大提升了测试用例的编写效率和对源代码的验证效率。