软件质量评估方法、装置及存储介质制造方法及图纸

技术编号:20724446 阅读:26 留言:0更新日期:2019-03-30 17:35
本发明专利技术涉及大数据技术,揭露了一种软件质量评估方法、电子装置及存储介质,该方法接收待评估的软件代码及其版本号,根据软件代码,利用预设的选取规则从测试用例库中选取基础测试用例进行测试得到第一代码覆盖率,并计算预期值。接着,该方法根据软件代码的需求,创建系统测试用例,利用系统测试用例进行测试得到差异化代码覆盖率及需求覆盖率,并利用测试用例库中所有的测试用例进行测试得到第二代码覆盖率。最后,该方法根据差异化代码覆盖率、需求覆盖率及第二代码覆盖率计算得到实时值,利用预设的比较算法对实时值及预期值进行比较生成比较值评估软件代码的质量。利用本发明专利技术,能够综合评估软件产品的质量,提高评估的准确性。

【技术实现步骤摘要】
软件质量评估方法、装置及存储介质
本专利技术涉及数据处理
,尤其涉及一种软件质量评估方法、装置及计算机可读存储介质。
技术介绍
在软件生命周期(SoftwareLifeCycle,SLC)中的任何一个阶段,只要代码发生了改变,就可能给该软件带来新的问题。代码改变产生的问题一方面可能是源于对发现的旧问题做出的修改。例如,当代码中的旧问题被发现时,如果旧问题跟踪与管理系统不够完善,就可能会遗漏该代码中与该旧问题相关的某部位的修改,或者开发人员对旧问题理解的不够透彻,也可能导致所做的修改不够彻底修正错误。另一方面也有可能是因为加入了新的模块。例如,在新代码加入软件的时候,除了新代码中可能含有错误外,新代码还有可能对软件中的原有代码带来影响。因此,每当代码发生改变时,我们就必须对改变后的代码进行测试评估,以发现并解决代码中存在的问题,提高软件产品的质量。目前,现有的软件产品质量评估方法分别采用需求覆盖率及代码覆盖率对软件进行测试评估,测试评估方法较为单一,不能够综合评价软件产品的质量,质量评估较为片面。
技术实现思路
鉴于以上内容,本专利技术提供一种软件质量评估方法、装置及计算机可读存储介质,其主要目的在于提高软件代码质量评估的准确性及有效性。为实现上述目的,本专利技术提供一种软件质量评估方法,该方法包括:接收步骤:接收待评估的软件代码及所述软件代码对应的版本号;选取步骤:根据所述软件代码,利用预设的选取规则从测试用例库中选取第一预设数量的测试用例作为基础测试用例;第一计算步骤:利用所述基础测试用例对所述软件代码进行测试得到第一代码覆盖率,将所述第一代码覆盖率代入预设公式计算得到预期值;创建步骤:根据所述软件代码,确定所述软件代码的需求,根据所述需求创建第二预设数量的测试用例得到系统测试用例;第一测试步骤:根据所述软件代码对应的版本号,确定所述软件代码中的差异化代码,利用所述系统测试用例对所述差异化代码进行测试得到差异化代码覆盖率;第二测试步骤:根据所述需求,利用所述系统测试用例对所述需求进行测试得到需求覆盖率;第三测试步骤:利用测试用例库中所有的测试用例对所述软件代码进行测试得到第二代码覆盖率;第二计算步骤:根据所述差异化代码覆盖率、需求覆盖率及第二代码覆盖率,利用预先确定的计算方式进行计算得到实时值;评估步骤:利用预设的比较算法对所述实时值及所述预期值进行比较生成比较值,根据比较值评估软件代码的质量。优选地,所述预设的选取规则包括:根据所述软件代码,分析该软件代码所实现的功能;及根据功能与测试用例的映射关系,从测试用例库中选取出第一预设数量与所述软件代码实现功能相对应的测试用例作为基础测试用例。优选地,所述第一计算步骤包括:利用所述基础测试用例对所述软件代码进行测试,对基础测试用例测试过的软件代码进行标注得到已测代码;将已测代码与软件代码进行对比得到第一代码覆盖率。优选地,所述创建步骤包括:根据所述需求的可测性,将所述需求拆分成多个子需求;针对每个子需求创建一个测试用例,设置每个子需求与对应的测试用例之间的映射关系得到系统测试用例。优选地,所述第一测试步骤包括:根据所述软件对应的版本号,确定该软件最近的历史版本号所对应的历史软件代码;将软件代码与历史软件代码进行对比得到差异化代码;利用所述系统测试用例对所述差异化代码进行测试,对系统测试用例测试过的差异化代码进行标注得到已测差异化代码;将已测差异化代码与差异化代码进行对比得到差异化代码覆盖率。优选地,该方法还包括:若所述比较值大于1,则判断软件质量合格,返回合格提示信息,若所述比较值小于1,则判断软件质量不合格,返回不合格提示信息,接收修改后的软件代码或测试用例后,流程重新返回至第一测试步骤直至软件质量合格。此外,本专利技术还提供一种电子装置,该电子装置包括:存储器、处理器及显示器,所述存储器上存储软件质量评估程序,所述软件质量评估程序被所述处理器执行,可实现如下步骤:接收步骤:接收待评估的软件代码及所述软件代码对应的版本号;选取步骤:根据所述软件代码,利用预设的选取规则从测试用例库中选取第一预设数量的测试用例作为基础测试用例;第一计算步骤:利用所述基础测试用例对所述软件代码进行测试得到第一代码覆盖率,将所述第一代码覆盖率代入预设公式计算得到预期值;创建步骤:根据所述软件代码,确定所述软件代码的需求,根据所述需求创建第二预设数量的测试用例得到系统测试用例;第一测试步骤:根据所述软件代码对应的版本号,确定所述软件代码中的差异化代码,利用所述系统测试用例对所述差异化代码进行测试得到差异化代码覆盖率;第二测试步骤:根据所述需求,利用所述系统测试用例对所述需求进行测试得到需求覆盖率;第三测试步骤:利用测试用例库中所有的测试用例对所述软件代码进行测试得到第二代码覆盖率;第二计算步骤:根据所述差异化代码覆盖率、需求覆盖率及第二代码覆盖率,利用预先确定的计算方式进行计算得到实时值;评估步骤:利用预设的比较算法对所述实时值及所述预期值进行比较生成比较值,根据比较值评估软件代码的质量。优选地,所述预设的选取规则包括:根据所述软件代码,分析该软件代码所实现的功能;及根据功能与测试用例的映射关系,从测试用例库中选取出第一预设数量与所述软件代码实现功能相对应的测试用例作为基础测试用例。优选地,所述创建步骤包括:根据所述需求的可测性,将所述需求拆分成多个子需求;针对每个子需求创建一个测试用例,设置每个子需求与对应的测试用例之间的映射关系得到系统测试用例。此外,为实现上述目的,本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质中包括软件质量评估程序,所述软件质量评估程序被处理器执行时,可实现如上所述软件质量评估方法中的任意步骤。本专利技术提出的软件质量评估方法、装置及计算机可读存储介质,通过利用基础测试用例计算出预期值,接着,创建系统测试用例并根据系统测试用例测试得到差异化代码覆盖率、需求覆盖率,以及利用成测试用例库中所有的测试用例测试得到第二代码覆盖率,最后,根据差异化代码覆盖率、需求覆盖率及第二代码覆盖率计算得到实时值,将实时值与预期值进行对比,从而能够准确、有效地评估软件产品的质量。附图说明图1为本专利技术软件质量评估方法的应用环境示意图;图2为本专利技术电子装置较佳实施例的示意图;图3为图2中软件质量评估程序较佳实施例的模块示意图;图4为本专利技术软件质量评估方法较佳实施例的流程图。本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。如图1所示,是本专利技术软件质量评估方法的应用环境示意图。本专利技术旨在提供一种软件质量评估系统,该系统主要包括电子装置1、客户端2及测试用例库3。在电子装置1端分别部署代码覆盖率测试工具及需求覆盖率测试工具的服务端。在客户端2端分别部署代码覆盖率测试工具及需求覆盖率测试工具的客户端。具体地,所述代码覆盖率测试工具可以是指Jacoco代码覆盖率工具,所述代码覆盖率测试工具的客户端用于记录用户在系统的实际运行环境下执行关于某软件产品的代码覆盖率测试的某操作行为,如创建新的测试用例。所述代码覆盖率测试工具的服务端用于接收所述代码覆盖率测试工具的客户端记录的某操作行为,并本文档来自技高网...

【技术保护点】
1.一种软件质量评估方法,应用于电子装置,其特征在于,所述方法包括:接收步骤:接收待评估的软件代码及所述软件代码对应的版本号;选取步骤:根据所述软件代码,利用预设的选取规则从测试用例库中选取第一预设数量的测试用例作为基础测试用例;第一计算步骤:利用所述基础测试用例对所述软件代码进行测试得到第一代码覆盖率,将所述第一代码覆盖率代入预设公式计算得到预期值;创建步骤:根据所述软件代码,确定所述软件代码的需求,根据所述需求创建第二预设数量的测试用例得到系统测试用例;第一测试步骤:根据所述软件代码对应的版本号,确定所述软件代码中的差异化代码,利用所述系统测试用例对所述差异化代码进行测试得到差异化代码覆盖率;第二测试步骤:根据所述需求,利用所述系统测试用例对所述需求进行测试得到需求覆盖率;第三测试步骤:利用测试用例库中所有的测试用例对所述软件代码进行测试得到第二代码覆盖率;第二计算步骤:根据所述差异化代码覆盖率、需求覆盖率及第二代码覆盖率,利用预先确定的计算方式进行计算得到实时值;评估步骤:利用预设的比较算法对所述实时值及所述预期值进行比较生成比较值,根据比较值评估软件代码的质量。

【技术特征摘要】
1.一种软件质量评估方法,应用于电子装置,其特征在于,所述方法包括:接收步骤:接收待评估的软件代码及所述软件代码对应的版本号;选取步骤:根据所述软件代码,利用预设的选取规则从测试用例库中选取第一预设数量的测试用例作为基础测试用例;第一计算步骤:利用所述基础测试用例对所述软件代码进行测试得到第一代码覆盖率,将所述第一代码覆盖率代入预设公式计算得到预期值;创建步骤:根据所述软件代码,确定所述软件代码的需求,根据所述需求创建第二预设数量的测试用例得到系统测试用例;第一测试步骤:根据所述软件代码对应的版本号,确定所述软件代码中的差异化代码,利用所述系统测试用例对所述差异化代码进行测试得到差异化代码覆盖率;第二测试步骤:根据所述需求,利用所述系统测试用例对所述需求进行测试得到需求覆盖率;第三测试步骤:利用测试用例库中所有的测试用例对所述软件代码进行测试得到第二代码覆盖率;第二计算步骤:根据所述差异化代码覆盖率、需求覆盖率及第二代码覆盖率,利用预先确定的计算方式进行计算得到实时值;评估步骤:利用预设的比较算法对所述实时值及所述预期值进行比较生成比较值,根据比较值评估软件代码的质量。2.根据权利要求1所述的软件质量评估方法,其特征在于,所述预设的选取规则包括:根据所述软件代码,分析该软件代码所实现的功能;及根据功能与测试用例的映射关系,从测试用例库中选取出第一预设数量与所述软件代码实现功能相对应的测试用例作为基础测试用例。3.根据权利要求1所述的软件质量评估方法,其特征在于,所述第一计算步骤包括:利用所述基础测试用例对所述软件代码进行测试,对基础测试用例测试过的软件代码进行标注得到已测代码;将已测代码与软件代码进行对比得到第一代码覆盖率。4.根据权利要求1所述的软件质量评估方法,其特征在于,所述创建步骤包括:根据所述需求的可测性,将所述需求拆分成多个子需求;针对每个子需求创建一个测试用例,设置每个子需求与对应的测试用例之间的映射关系得到系统测试用例。5.根据权利要求1所述的软件质量评估方法,其特征在于,所述第一测试步骤包括:根据所述软件对应的版本号,确定该软件最近的历史版本号所对应的历史软件代码;将软件代码与历史软件代码进行对比得到差异化代码;利用所述系统测试用例对所述差异化代码进行测试,对系统测试用例测试过的差异化代码进行标注得到已测差异化代码;将已测差异化代码与差异化代码进...

【专利技术属性】
技术研发人员:祝伟
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东,44

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

1