代码测试方法、装置、电子设备及计算机可读存储介质制造方法及图纸

技术编号:34956717 阅读:11 留言:0更新日期:2022-09-17 12:35
本申请公开了一种代码测试方法、装置、电子设备及计算机可读存储介质,涉及代码测试技术领域。该代码测试方法包括:获取测试案例;对测试案例进行代码测试,监测测试过程中运行测试案例所运行的测试代码量;基于测试案例的需求获取总代码量;基于测试代码量和总代码量,确定测试案例的代码覆盖率并基于代码覆盖率确定测试案例的准确分值。通过上述方式,本申请可以利用测试案例对对应的每个需求进行代码测试,且获取该测试案例的准确分值,可以有效地评估与需求对应的该测试案例的代码测试效果。效果。效果。

【技术实现步骤摘要】
代码测试方法、装置、电子设备及计算机可读存储介质


[0001]本申请涉及代码测试
,具体涉及一种代码测试方法、装置、电子设备及计算机可读存储介质。

技术介绍

[0002]在目前软件应用中,开发出软件后,通常需要对软件代码进行测试,软件测试主要用于对软件正确性进行分析和对软件漏洞进行检测。在进行软件测试时,通常需要确定测试案例的执行完整情况,通过测试用例的执行完整情况来对测试工作进行评估,进而便于对测试案例等进行调整,在此基础上对软件的代码进行完善。
[0003]代码覆盖率是软件测试中的一种度量,描述软件代码中程式中源代码被测试的比例和程度,所得比例称为代码覆盖率。现有的代码覆盖率的确定,都是针对需要进行测试的全部代码进行测试和收集代码覆盖率,并基于针对全部代码的代码覆盖率对测试工作的完成情况进行评估,但软件具有多个需求,目前这种测试手段并不能很好地对软件每个需求的测试效果进行有效评估。

技术实现思路

[0004]本申请提出了一种代码测试方法、装置、电子设备及计算机可读存储介质,以解决上述代码测试中出现的问题。
[0005]为解决上述技术问题,本申请采用的一个技术方案是:提供一种代码测试方法。该方法包括:
[0006]获取测试案例;对所述测试案例进行代码测试,监测测试过程中运行所述测试案例所运行的测试代码量;基于所述测试案例的需求获取总代码量;基于所述测试代码量和所述总代码量,确定所述测试案例的代码覆盖率并基于所述代码覆盖率确定所述测试案例的准确分值。
[0007]其中,所述获取测试案例包括:
[0008]响应于用户的需求输入指令,基于所述需求输入指令将用户需求输入案例模型;将所述案例模型根据所述用户需求自动生成的案例,作为所述测试案例。
[0009]其中,所述基于所述测试代码量和所述总代码量,确定所述测试案例的准确分值之后,所述代码测试方法还包括:
[0010]基于所述测试案例的准确分值,确定所述案例模型的预测分值;基于所述预测分值对所述案例模型进行训练。
[0011]其中,所述基于所述测试代码量和所述总代码量,确定所述测试案例的代码覆盖率并基于所述代码覆盖率确定所述测试案例的准确分值之后,所述代码测试方法还包括:
[0012]判断所述测试案例的准确分值是否大于等于预设分数阈值;若是,则将所述测试案例存储到案例数据库;若否,则将所述测试案例的测试信息推送给对应的开发人员和测试人员。
[0013]其中,所述代码测试方法,还包括:
[0014]获取所述案例数据库中所有存储的测试案例,以及所述测试案例的测试代码量;比较所有存储的测试案例的测试代码量;若存在两个或两个以上测试案例的测试代码相同时,保留其中一个测试案例,并删除其余测试案例;若存在一个测试案例的测试代码在其他测试案例的测试代码范围内时,将该测试案例删除。
[0015]其中,所述代码测试方法,还包括:
[0016]响应于用户的案例推荐指令,定位代码库中所述案例推荐指令指定的代码;将使用该执行的代码进行测试的所有测试案例,推送给所述用户,并显示该执行的代码的开发人员。
[0017]其中,所述基于所述测试代码量和所述总代码量,确定所述测试案例的代码覆盖率并基于所述代码覆盖率确定所述测试案例的准确分值之后,所述代码测试方法还包括:
[0018]获取每一测试案例的开发人员,及其开发团队;基于每一测试案例的准确分值,给所述开发人员和/或开发团队进行评估打分。
[0019]为解决上述技术问题,本申请采用的另一个技术方案是:提供一种代码测试装置。该代码测试装置包括案例获取模块、案例测试模块、总代码量获取模块及案例打分模块。
[0020]案例获取模块用于获取测试案例;案例测试模块用于对所述测试案例进行代码测试,监测测试过程中运行所述测试案例所运行的测试代码量;总代码量获取模块用于基于所述测试案例的需求获取总代码量;案例打分模块用于基于所述测试代码量和所述总代码量,确定所述测试案例的代码覆盖率并基于所述代码覆盖率确定所述测试案例的准确分值。
[0021]为解决上述技术问题,本申请采用的一个技术方案是:提供一种电子设备,该电子设备包括处理器及与处理器连接的存储器,存储器中存储有程序数据,处理器执行存储器存储的程序数据,以执行实现上述任一项的代码测试方法。
[0022]为解决上述技术问题,本申请采用的另一个技术方案是:提供一种计算机可读存储介质,其内部存储有程序指令,程序指令被执行以实现上述任一项的代码测试方法。
[0023]本申请的有益效果是:区别于现有技术的情况,本申请的代码测试方法通过获取测试案例并对测试案例对应的需求进行代码测试,监测测试过程中测试案例所运行的测试代码量,并获取与测试案例对应的需求的总代码量,从而计算与需求对应的测试案例的代码覆盖率,并基于代码覆盖率确定测试案例的准确分值,从而可以对软件每个需求的测试效果进行有效地评估。
附图说明
[0024]图1是本申请代码测试方法第一实施例的流程示意图;
[0025]图2是本申请图1中步骤S101的一具体实施例的流程示意图;
[0026]图3是本申请代码测试方法第二实施例的流程示意图;
[0027]图4是本申请代码测试方法第三实施例的流程示意图;
[0028]图5是本申请代码测试方法第四实施例的流程示意图;
[0029]图6是本申请代码测试方法第五实施例的流程示意图;
[0030]图7是本申请代码测试方法第六实施例的流程示意图;
[0031]图8是本申请代码测试装置一实施例的结构示意图;
[0032]图9是本申请电子设备一实施例的结构示意图;
[0033]图10是本申请计算机可读存储介质一实施例的结构示意图。
具体实施方式
[0034]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0035]目前软件开发中,在流程无异于需求澄清、设计评审、代码测试及投产等几个关键步骤。这里面的每一步都是需要团队人员共同参与才能完成。代码测试相比于其他节点,更为重要,也更为难处理。现有技术中代码测试通常是针对需要进行测试的软件的所有代码进行测试并收集代码覆盖率。现有技术中对全部代码进行测试得到的代码覆盖率并不能很好的对测试人员的测试效果进行有效地评估。如果测试案例缺失或者测试不到位情况,很有可能将这种代码存在的问题直接带入到生产环境,造成生产事故。
[0036]为了解决上述代码测试中存在的问题,本申请首先提出一种代码测试方法,可以对软件的每个需求的测试效果进行有效评估。请参阅图1,图1是本申请代码测试方法第一实施例的流程示意图。如图1所示,该方法具体包括步骤S101本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种代码测试方法,其特征在于,所述代码测试方法包括:获取测试案例;对所述测试案例进行代码测试,监测测试过程中运行所述测试案例所运行的测试代码量;基于所述测试案例的需求获取总代码量;基于所述测试代码量和所述总代码量,确定所述测试案例的代码覆盖率并基于所述代码覆盖率确定所述测试案例的准确分值。2.根据权利要求1所述的代码测试方法,其特征在于,所述获取测试案例,包括:响应于用户的需求输入指令,基于所述需求输入指令将用户需求输入案例模型;将所述案例模型根据所述用户需求自动生成的案例,作为所述测试案例。3.根据权利要求2所述的代码测试方法,其特征在于,所述基于所述测试代码量和所述总代码量,确定所述测试案例的代码覆盖率并基于所述代码覆盖率确定所述测试案例的准确分值之后,所述代码测试方法还包括:基于所述测试案例的准确分值,确定所述案例模型的预测分值;基于所述预测分值对所述案例模型进行训练。4.根据权利要求1所述的代码测试方法,其特征在于,所述基于所述测试代码量和所述总代码量,确定所述测试案例的代码覆盖率并基于所述代码覆盖率确定所述测试案例的准确分值之后,所述代码测试方法还包括:判断所述测试案例的准确分值是否大于等于预设分数阈值;若是,则将所述测试案例存储到案例数据库;若否,则将所述测试案例的测试信息推送给对应的开发人员和测试人员。5.根据权利要求4所述的代码测试方法,其特征在于,所述代码测试方法,还包括:获取所述案例数据库中所有存储的测试案例,以及所述测试案例的测试代码量;比较所有存储的测试案例的测试代码量;若存在两个或两个以上测试案例的测试代码相同时,保留其中一个测试案例,并删除其余测试案...

【专利技术属性】
技术研发人员:王砺磊侯睿
申请(专利权)人:平安银行股份有限公司
类型:发明
国别省市:

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

1