测试用例确定方法、装置、介质和计算设备制造方法及图纸

技术编号:39144522 阅读:12 留言:0更新日期:2023-10-23 14:56
本发明专利技术的实施方式提供了一种测试用例确定方法、装置、介质和计算设备,该方法包括:确定待测试版本代码相较于前一版本代码的变更代码的信息;基于所述变更代码的信息,根据各个第一测试用例与所述前一版本代码的映射关系,确定出用于测试所述变更代码的备用测试用例集;其中,第一测试用例用于测试所述前一版本代码;依据测试用例对代码的测试执行程度,对所述备用测试用例集进行优化,获取用于测试所述变更代码的目标测试用例集。本发明专利技术实施方式提供的方法可以自动确定源代码中被修改代码的信息,并针对该被修改代码自动化推荐出相应的测试用例,实现了基于修改代码灵活推荐用例,提高了软件测试效率,为用户带来了更好的体验。体验。体验。

【技术实现步骤摘要】
测试用例确定方法、装置、介质和计算设备


[0001]本专利技术的实施方式涉及计算机
,更具体地,本专利技术的实施方式涉及一种测试用例确定方法、装置、介质和计算设备。

技术介绍

[0002]本部分旨在为权利要求书中陈述的本专利技术的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
[0003]代码覆盖率是软件测试中的一项重要评价指标,通过计算测试过程中被执行的源代码占全部源代码的比例描述对程序源代码的测试程度。在目前的软件测试中,可以根据测试用例的执行情况,生成该测试用例对应的代码覆盖率报告,该报告中包括已经执行过的代码和未被执行过的代码。
[0004]随着软件的版本迭代,软件的测试用例集中的测试用例数目逐渐增多。在对修改后的源代码进行测试时,通常是将测试用例集中的所有测试用例全部执行一次,或者由测试人员从测试用例集中人工选择相应的测试用例并执行,根据各个测试用例的代码覆盖率报告,确认修改是否引入新的错误或导致其他代码产生错误。
[0005]相关技术中第一种方式的测试工程量大且耗时较长,对于未被修改的代码重复测试,存在资源浪费以及测试效率低下的问题;第二种方式主要基于测试人员的主观判断,依赖测试人员的水平,易因测试人员主观分析导致测试遗漏,影响测试效果。

技术实现思路

[0006]有鉴于此,需要一种改进的测试用例确定方法,以实现针对修改的源代码自动化推荐相应的测试用例,提高软件测试效率。
[0007]在本上下文中,本专利技术的实施方式期望提供一种测试用例确定方法、
[0008]装置、介质和计算设备。
[0009]在本专利技术实施方式的第一方面中,提供了一种测试用例确定方法,所述方法包括:
[0010]确定待测试版本代码相较于前一版本代码的变更代码的信息;
[0011]基于所述变更代码的信息,根据各个第一测试用例与所述前一版本代码的映射关系,确定出用于测试所述变更代码的备用测试用例集;其中,第一测试用例用于测试所述前一版本代码;
[0012]依据测试用例对代码的测试执行程度,对所述备用测试用例集进行优化,获取用于测试所述变更代码的目标测试用例集。
[0013]可选地,所述各个第一测试用例与所述前一版本代码的映射关系通过下述方式确定:
[0014]若所述前一版本代码为应用程序的首个版本代码,则依据所述各个第一测试用例对所述首个版本代码进行测试,获取各个所述第一测试用例对应的代码覆盖率文件;
[0015]根据所述代码覆盖率文件,确定出所述第一测试用例与所述首个版本代码的映射
关系并存储。
[0016]可选地,所述根据所述代码覆盖率文件,确定出所述第一测试用例与所述首个版本代码的映射关系并存储,包括:
[0017]根据所述代码覆盖率文件,获取所述第一测试用例对应的已执行代码的信息,所述已执行代码的信息至少包括已执行代码的行号、已执行代码所包含的方法以及所包含的类;
[0018]建立所述第一测试用例与所述已执行代码的信息的映射关系。
[0019]可选地,在对所述首个版本代码进行测试之前,所述方法还包括:
[0020]获取针对所述应用程序创建的初始测试用例集;所述初始测试用例集中的测试用例对应第二编号;
[0021]根据所述初始测试用例集,确定用于测试首个版本代码的测试执行集,所述测试执行集中的各个第一测试用例对应第一编号;
[0022]根据同一测试用例对应的所述第一编号和所述第二编号,建立测试执行集与初始测试用例集的映射关系;
[0023]所述根据所述代码覆盖率文件,确定出所述第一测试用例与所述首个版本代码的映射关系并存储,包括:
[0024]根据测试执行集与初始测试用例集的映射关系,确定所述第一测试用例的第一编号对应在初始测试用例集中的第二编号;
[0025]建立所述初始测试用例集中第二编号的测试用例与所述首个版本代码的映射关系。
[0026]可选地,所述各个第一测试用例与所述前一版本代码的对应关系通过下述方式确定:
[0027]若所述前一版本代码不是应用程序的首个版本代码,则获取该前一版本代码中的变更代码的目标测试用例的代码覆盖率文件;
[0028]根据所述代码覆盖率文件,更新已存储的各个第一测试用例与历史版本代码的映射关系,所述历史版本代码是指该前一版本代码之前的版本代码。
[0029]可选地,所述基于所述变更代码的信息,根据各个第一测试用例与所述前一版本代码的映射关系,确定出用于测试所述变更代码的备用测试用例集,包括:
[0030]根据所述映射关系,获取所述各个第一测试用例对应的已执行代码的信息;所述已执行代码的信息至少包括已执行代码的行号、已执行代码所包含的方法以及所包含的类;
[0031]确定已执行代码的信息中包含所述变更代码的信息的第一测试用例,并加入所述备用测试用例集;所述变更代码的信息至少包括变更代码的行号、变更代码所属方法、变更代码所属类中的至少一种。
[0032]可选地,所述测试执行程度根据测试用例对应的已执行代码的行号确定;
[0033]所述依据测试用例对代码的测试执行程度,对所述备用测试用例集进行优化,获取用于测试所述变更代码的目标测试用例集,包括:
[0034]对所述备用测试用例集中的测试用例,根据所述变更代码的每一行的行号,逐行匹配已执行代码的行号包含该变更代码的行号的各个第二测试用例;
[0035]将已执行代码中包含变更代码的行数满足设定的第一行过滤系数的第二测试用例进行聚类,并根据聚类结果获取所述目标测试用例集。
[0036]可选地,所述测试执行程度根据测试用例对应的已执行代码所包含的方法及所包含的类确定;
[0037]所述依据测试用例对代码的测试执行程度,对所述备用测试用例集进行优化,获取用于测试所述变更代码的目标测试用例集,包括:
[0038]对所述备用测试用例集中的测试用例,根据所述变更代码所属方法及所属类,获取已执行代码中包含该变更代码所属方法及所属类的第三测试用例,并依据该第三测试用例得到目标测试用例集。
[0039]可选地,所述测试执行程度根据测试用例对应的已执行代码的行号确定的;
[0040]所述依据测试用例对代码的测试执行程度,对所述备用测试用例集进行优化,获取用于测试所述变更代码的目标测试用例集,包括:
[0041]对所述备用测试用例集中的测试用例,确定已执行代码的行号包含所述变更代码的剩余行号最多的第四测试用例;其中,所述剩余行号是指除目标行号外的变更代码的行号,所述目标行号是指目标测试用例集中的测试用例对应的已执行代码所包含变更代码的行号;
[0042]若已执行代码的行数满足设定的第二行过滤系数,则将所述第四测试用例加入所述目标测试用例集;
[0043]对除所述第四测试用例以外的备用测试用例集,重复执行确定已执行代码的行号包含所述变更代码的剩余行号最多的第本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种测试用例确定方法,其特征在于,所述方法包括:确定待测试版本代码相较于前一版本代码的变更代码的信息;基于所述变更代码的信息,根据各个第一测试用例与所述前一版本代码的映射关系,确定出用于测试所述变更代码的备用测试用例集;其中,第一测试用例用于测试所述前一版本代码;依据测试用例对代码的测试执行程度,对所述备用测试用例集进行优化,获取用于测试所述变更代码的目标测试用例集。2.根据权利要求1所述的方法,其特征在于,所述各个第一测试用例与所述前一版本代码的映射关系通过下述方式确定:若所述前一版本代码为应用程序的首个版本代码,则依据所述各个第一测试用例对所述首个版本代码进行测试,获取各个所述第一测试用例对应的代码覆盖率文件;根据所述代码覆盖率文件,确定出所述第一测试用例与所述首个版本代码的映射关系并存储。3.根据权利要求1所述的方法,其特征在于,所述基于所述变更代码的信息,根据各个第一测试用例与所述前一版本代码的映射关系,确定出用于测试所述变更代码的备用测试用例集,包括:根据所述映射关系,获取所述各个第一测试用例对应的已执行代码的信息;所述已执行代码的信息至少包括已执行代码的行号、已执行代码所包含的方法以及所包含的类;确定已执行代码的信息中包含所述变更代码的信息的第一测试用例,并加入所述备用测试用例集;所述变更代码的信息至少包括变更代码的行号、变更代码所属方法、变更代码所属类中的至少一种。4.根据权利要求1所述的方法,其特征在于,所述测试执行程度根据测试用例对应的已执行代码的行号确定;所述依据测试用例对代码的测试执行程度,对所述备用测试用例集进行优化,获取用于测试所述变更代码的目标测试用例集,包括:对所述备用测试用例集中的测试用例,根据所述变更代码的每一行的行号,逐行匹配已执行代码的行号包含该变更代码的行号的各个第二测试用例;将已执行代码中包含变更代码的行数满足设定的第一行过滤系数的第二测试用例进行聚类,并根据聚类结果获取所述目标测试用例集。5.根据权利要求1所述的方法,其特征在于,所述测试执行程度根据测试用例对应的已执行代码所包含的方法及所包含的类确定;所述依据测试用例对代码的测试执行程度,对所述备用测试用例集进行优化,获取用于测试所述变更代码的目标测试用例集,包括:对所述备用测试用例集中的测试用例,根据所述变更代码所属方法及所属类,获取已执行代码...

【专利技术属性】
技术研发人员:李森钱璐贺海波刘晓东
申请(专利权)人:网易传媒科技北京有限公司
类型:发明
国别省市:

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

1