本发明涉及android软件测试,尤其涉及一种应用测试过程中未执行测试代码的获取方法及装置。
背景技术:
1、随着android应用越来越壮大,对应代码量显著增加,代码逻辑也日趋复杂,此时需要采取一定的行动去保证代码质量,减少逻辑漏洞等,于是严格地执行单元测试编写任务,将单元测试落实到平常开发和维护任务当中去,就是很重要的一环,不可忽视。但是在测试过程中,测试范围评估不准确、不全,代码改动针对测试人员来说存在盲区,现有技术中对新版本应用进行代码测试时可能遗漏未执行代码导致测试过程不完善的技术问题亟待解决。
技术实现思路
1、针对现有技术中的问题,本发明实施例提供一种应用测试过程中未执行测试代码的获取方法及装置,用以解决现有技术中对新版本应用进行代码测试时可能遗漏未执行代码导致测试过程不完善的技术问题。
2、本发明实施例提供一种应用测试过程中未执行测试代码的获取方法,包括:
3、对目标应用的两个版本的安装包文件进行分析,获取两个版本中的新版本相较于旧版本的更新功能,并获取与更新功能对应的第一代码;
4、针对更新功能对目标应用的新版本对应的代码进行测试,获取执行了更新功能的第二代码;
5、将第一代码和第二代码进行比对,获取未执行测试的代码。
6、可选的,在本发明一实施例中,对目标应用的两个版本的文件进行分析,获取新版本相较于旧版本的更新功能,包括:基于目标应用的两个版本的安装包文件获取目标应用的调用链关系;基于调用链关系获取代码调用关系;获取两个版本的源代码,通过两个版本的源代码获取代码变更结果;基于代码调用关系和代码变更分析获取更新功能。
7、可选的,在本发明一实施例中,方法还包括:对更新功能进行多次测试,获取多份测试后的第二代码;对多份第二代码进行去重后融合,获取第三代码。
8、可选的,在本发明一实施例中,在获取与更新功能对应的第一代码之后,方法还包括:获取与第一代码对应的至少一个功能控件;获取与至少一个功能控件分别对应的界面图标;利用至少一个功能控件、界面图标以及与至少一个功能控件对应的第一代码对更新功能进行可视化处理,获取可视化结果。
9、本发明实施例还提供一种应用测试过程中未执行测试代码的获取装置,包括:
10、安装包分析模块,用于对目标应用的两个版本的安装包文件进行分析,获取两个版本中的新版本相较于旧版本的更新功能,并获取与更新功能对应的第一代码;
11、代码测试模块,用于针对更新功能对目标应用的新版本对应的代码进行测试,获取执行了更新功能的第二代码;
12、比对模块,用于将第一代码和第二代码进行比对,获取未执行测试的代码。
13、可选的,在本发明一实施例中,安装包分析模块,包括:调用链关系获取单元,用于基于目标应用的两个版本的安装包文件获取目标应用的调用链关系;代码调用关系获取单元,用于基于调用链关系获取代码调用关系;代码变更结果获取单元,用于获取两个版本的源代码,通过两个版本的源代码获取代码变更结果;更新功能获取单元,用于基于代码调用关系和代码变更分析获取更新功能。
14、可选的,在本发明一实施例中,装置还包括:测试单元,用于对更新功能进行多次测试,获取多份测试后的第二代码;去重融合单元,用于对多份第二代码进行去重后融合,获取第三代码。
15、可选的,在本发明一实施例中,装置还包括:功能控件获取单元,用于在获取与更新功能对应的第一代码之后,获取与第一代码对应的至少一个功能控件;界面图标获取单元,用于获取与至少一个功能控件分别对应的界面图标;可视化单元,用于利用至少一个功能控件、界面图标以及与至少一个功能控件对应的第一代码对更新功能进行可视化处理,获取可视化结果。
16、本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述应用测试过程中未执行测试代码的获取方法。
17、本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述应用测试过程中未执行测试代码的获取方法。
18、本发明实施例还提供一种计算机程序产品,计算机程序产品包括计算机程序,计算机程序被处理器执行时实现上述应用测试过程中未执行测试代码的获取方法。
19、本发明实施例提供的应用测试过程中未执行测试代码的获取方法及装置,通过对目标应用的两个版本的安装包文件进行分析,获取两个版本中的新版本相较于旧版本的更新功能,并获取与更新功能对应的第一代码;针对更新功能对目标应用的新版本对应的代码进行测试,获取执行了更新功能的第二代码;将第一代码和第二代码进行比对,获取未执行测试的代码,提高了针对目标应用的代码测试的准确率。
1.一种应用测试过程中未执行测试代码的获取方法,其特征在于,包括:
2.如权利要求1所述的方法,其特征在于,对目标应用的两个版本的文件进行分析,获取新版本相较于旧版本的更新功能,包括:
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
4.如权利要求1所述的方法,其特征在于,在获取与所述更新功能对应的第一代码之后,所述方法还包括:
5.一种应用测试过程中未执行测试代码的获取装置,其特征在于,包括:
6.如权利要求5所述的装置,其特征在于,所述安装包分析模块,包括:
7.如权利要求5所述的装置,其特征在于,所述装置还包括:
8.如权利要求5所述的装置,其特征在于,所述装置还包括:
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4任一所述方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至4任一所述方法。