空指针对象检测方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:33205930 阅读:10 留言:0更新日期:2022-04-24 00:52
本发明专利技术涉及云技术,提供了空指针对象检测方法、装置、设备及介质,是获取待测试代码压缩数据且将待测试代码压缩数据进行解压得到待测试代码数据,然后获取待测试代码数据中包括的对象,将每一对象的表达式通过预设的空指针对象检测策略进行对象检测,得到与每一对象对应的检验结果,最后获取检验结果为空指针的对象组成目标对象集,将目标对象集存储至预先创建的存储表中得到输出存储表并将输出存储表发送至接收端。实现了基于空指针对象检测策略准确的检测待测试代码数据中的空指针对象,提高了空指针对象的定位效率,而且极大减少测试回归工作量,避免测试过程中异常数据未考虑充分引起的漏测。分引起的漏测。分引起的漏测。

【技术实现步骤摘要】
空指针对象检测方法、装置、计算机设备及存储介质


[0001]本专利技术涉及云测试的功能测试
,尤其涉及一种空指针对象检测方法、装置、计算机设备及存储介质。

技术介绍

[0002]目前,Java代码在测试过程中,常存在以下问题:1)当一个对象不存在时又调用其方法会产生异常obj.method()//obj对象不存在;2)当访问或修改一个对象不存在的字段时会产生异常obj.method()//method方法不存在;3)字符串变量未初始化;4)接口类型的对象没有用具体的类初始化。
[0003]而在Java代码的测试过程中针对上述问题时,一般是手动编译查找错误,导致代码中的错误难以发现,容易造成测试遗漏。

技术实现思路

[0004]本专利技术实施例提供了一种空指针对象检测方法、装置、计算机设备及存储介质,旨在解决现有技术中对Java代码中对象不存在、方法不存在符串变量未初始化等问题的测试是手动编译查找错误,导致代码中的错误难以发现,容易造成测试遗漏的问题。
[0005]第一方面,本专利技术实施例提供了一种空指针对象检测方法,其包括:
[0006]响应于代码测试指令,获取与所述代码测试指令对应的待测试代码压缩数据;
[0007]将所述待测试代码压缩数据进行解压,得到待测试代码数据;
[0008]获取所述待测试代码数据中包括的对象,将每一对象的表达式通过预设的空指针对象检测策略进行对象检测,得到与每一对象对应的检验结果;
[0009]获取检验结果为空指针的对象组成目标对象集,将所述目标对象集存储至预先创建的存储表中得到输出存储表;以及
[0010]获取所述代码测试指令对应的接收端,将所述输出存储表发送至接收端。
[0011]第二方面,本专利技术实施例提供了一种空指针对象检测装置,其包括:
[0012]待测试代码接收单元,用于响应于代码测试指令,获取与所述代码测试指令对应的待测试代码压缩数据;
[0013]代码解压单元,用于将所述待测试代码压缩数据进行解压,得到待测试代码数据;
[0014]空对象检测单元,用于获取所述待测试代码数据中包括的对象,将每一对象的表达式通过预设的空指针对象检测策略进行对象检测,得到与每一对象对应的检验结果;
[0015]目标对象集获取单元,用于获取检验结果为空指针的对象组成目标对象集,将所述目标对象集存储至预先创建的存储表中得到输出存储表;以及
[0016]输出表发送单元,用于获取所述代码测试指令对应的接收端,将所述输出存储表发送至接收端。
[0017]第三方面,本专利技术实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序
时实现上述第一方面所述的空指针对象检测方法。
[0018]第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的空指针对象检测方法。
[0019]本专利技术实施例提供了一种空指针对象检测方法、装置、计算机设备及存储介质,先获取待测试代码压缩数据且将所述待测试代码压缩数据进行解压得到待测试代码数据,然后获取所述待测试代码数据中包括的对象,将每一对象的表达式通过预设的空指针对象检测策略进行对象检测,得到与每一对象对应的检验结果,最后获取检验结果为空指针的对象组成目标对象集,将所述目标对象集存储至预先创建的存储表中得到输出存储表并将所述输出存储表发送至接收端。实现了基于空指针对象检测策略准确的检测待测试代码数据中的空指针对象,提高了空指针对象的定位效率,而且极大减少测试回归工作量,避免测试过程中异常数据未考虑充分引起的漏测。
附图说明
[0020]为了更清楚地说明本专利技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0021]图1为本专利技术实施例提供的空指针对象检测方法的应用场景示意图;
[0022]图2为本专利技术实施例提供的空指针对象检测方法的流程示意图;
[0023]图3为本专利技术实施例提供的空指针对象检测装置的示意性框图;
[0024]图4为本专利技术实施例提供的计算机设备的示意性框图。
具体实施方式
[0025]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0026]应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0027]还应当理解,在此本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本专利技术。如在本专利技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
[0028]还应当进一步理解,在本专利技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0029]请参阅图1和图2,图1为本专利技术实施例提供的空指针对象检测方法的应用场景示意图;图2为本专利技术实施例提供的空指针对象检测方法的流程示意图,该空指针对象检测方法应用于服务器或用户端中,该方法通过安装于服务器或用户端中的应用软件进行执行。
[0030]如图2所示,该方法包括步骤S101~S105。
[0031]S101、响应于代码测试指令,获取与所述代码测试指令对应的待测试代码压缩数据。
[0032]在本实施例中,是以服务器或用户端为执行主体来描述技术方案,此时将服务器及用户端可以统称为处理端。在处理端中均可以预先部署代码空指针对象检测插件,通过代码空指针对象检测插件中的空指针对象检测策略可以对待测试代码中存在空指针的异常对象进行检测,从而有效提高代码测试效率。为了实现对代码中存在空指针的异常对象进行检测,需要先检测是否有待检测代码压缩数据上传至处理端。若检测到代码测试指令,表示处理端有获取到待测试代码压缩数据,之后对待测试代码压缩数据进一步进行异常对象检测即可。
[0033]S102、将所述待测试代码压缩数据进行解压,得到待测试代码数据。
[0034]在本实施例中,由于一般待测试代码压缩数据是Java代码的压缩数据,且Java代码的常见压缩格式之一是WAR(WAR全称是Web归档,表示一个用于存储一个或多个如下内容的Java归本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种空指针对象检测方法,其特征在于,包括:响应于代码测试指令,获取与所述代码测试指令对应的待测试代码压缩数据;将所述待测试代码压缩数据进行解压,得到待测试代码数据;获取所述待测试代码数据中包括的对象,将每一对象的表达式通过预设的空指针对象检测策略进行对象检测,得到与每一对象对应的检验结果;获取检验结果为空指针的对象组成目标对象集,将所述目标对象集存储至预先创建的存储表中得到输出存储表;以及获取所述代码测试指令对应的接收端,将所述输出存储表发送至接收端。2.根据权利要求1所述的空指针对象检测方法,其特征在于,所述将所述待测试代码压缩数据进行解压,得到待测试代码数据,包括:获取所述待测试代码压缩数据的文件后缀名称,若确定所述文件后缀名称与预设的第一后缀名称相同,获取与所述第一后缀名称对应的解压插件数据;根据所述解压插件数据对所述待测试代码压缩数据进行解压,得到待测试代码数据。3.根据权利要求1所述的空指针对象检测方法,其特征在于,所述将所述待测试代码压缩数据进行解压,得到待测试代码数据之后,还包括:若确定所述待测试代码数据为加密数据,获取与所述待测试代码数据对应的解码密钥,对所述待测试代码数据进行解密,以更新待测试代码数据。4.根据权利要求1所述的空指针对象检测方法,其特征在于,所述获取所述待测试代码数据中包括的对象,包括:获取预设的对象关键词,获取所述待测试代码数据中具有所述对象关键词的子代码数据,组成目标子代码数据集;其中,所述目标子代码数据集中每一子代码数据对应一个对象。5.根据权利要求1所述的空指针对象检测方法,其特征在于,所述将每一对象的表达式通过预设的空指针对象检测策略进行对象检测,得到与每一对象对应的检验结果,包括:获取空指针对象检测策略对应的正则表达式,获取所述待测试代码数据中包括的对象中满足所述正则表达式对应条件的第一目标对象集,及获取所述待测试代码数据中包括的对象中不满足所述正则表达式对应条件的第二目标对象集;将所述第一目标对象集中每一对象的检验结果设置为用于标识...

【专利技术属性】
技术研发人员:邓鹏
申请(专利权)人:平安付科技服务有限公司
类型:发明
国别省市:

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

1