[发明专利]软件测试中最小用例集的确定方法及确定装置在审
申请号: | 202210189790.7 | 申请日: | 2022-02-28 |
公开(公告)号: | CN114443505A | 公开(公告)日: | 2022-05-06 |
发明(设计)人: | 陈天梅;杨晔;武文英;王德中;苏凤桐 | 申请(专利权)人: | 广联达科技股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京英特普罗知识产权代理有限公司 11015 | 代理人: | 程超 |
地址: | 100193 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件 测试 最小 用例集 确定 方法 装置 | ||
本发明提供一种软件测试中最小用例集的确定方法及确定装置,所述方法包括:监听被测软件在自动测试过程中基于测试用例而产生的调用数据链;从预存的第一数据表中确定每个所述函数标识所对应的预设数值,根据所述预设数值计算并存储所述调用数据链的链值;其中,所述第一数据表用于记录每个所述函数标识和对应的预设数据之间的映射关系;获取发生了代码变更的目标函数标识;从预存的第二数据表中检索包含所述目标函数标识的所有目标用例的用例标识;所述用例包括所述调用数据链,所述第二数据表用于记录每个用例标识和对应的函数标识之间的映射关系;根据所述调用数据链和所述链值从所述所有目标用例中确定最小用例集。
技术领域
本发明涉及软件测试技术领域,特别涉及软件测试中最小用例集的确定方法及确定装置。
背景技术
随着软件研发的持续集成、发布以及版本升级,精准高效的测试对于软件质量有着非常重要的作用。为了尽可能多地覆盖不同应用场景,测试用例脚本的数量日益增大。在研发或升级过程中,当软件的某个函数发生修改时,需要选择恰当的测试用例来对修改后的软件进行功能测试以及早发现问题进行处理。现有技术中选择测试用例的方案通常是测试软件中打桩以输出每次测试的调用函数链,根据发生修改的函数标识获取包含该函数的全部测试用例数据。然而,包含某函数的全部测试用例数据存储量巨大,对于平台级应用来说甚至会达到亿级,使得软件测试的效率极低,且维护成本较高。
发明内容
本发明的目的是提供一种能够快速精准地获取数据量较少的最小测试用例集的技术方案,以解决现有技术中存在的上述问题。
为实现上述目的,本发明提供一种软件测试中最小用例集的确定方法,包括以下步骤:
监听被测软件在自动测试过程中基于测试用例而产生的调用数据链;所述调用数据链包括按调用时间顺序依次排列的函数标识的集合;
从预存的第一数据表中确定每个所述函数标识所对应的预设数值,根据所述预设数值计算并存储所述调用数据链的链值;其中,所述第一数据表用于记录每个所述函数标识和对应的预设数据之间的映射关系,所述预设数值用于唯一性表征所述函数标识;
获取发生了代码变更的目标函数标识;
从预存的第二数据表中检索包含所述目标函数标识的所有目标用例的用例标识;所述用例包括所述调用数据链,所述第二数据表用于记录每个用例标识和对应的函数标识之间的映射关系;
根据所述调用数据链和所述链值从所述所有目标用例中确定最小用例集。
根据本发明提供的最小用例集的确定方法,所述根据所述预设数值计算并存储所述调用数据链的链值的步骤包括:
确定每个所述函数标识对应的函数权重;
基于所述函数权重对所述预设数值加权求和,以得到所述调用数据链的链值。
根据本发明提供的最小用例集的确定方法,所述根据所述调用数据链和所述链值从所述所有目标用例中确定最小用例集的步骤包括:
基于每个所述用例标识、所述用例中包含的调用数据链以及所述数据链的链值构造数据结构体;
对所有数据结构体进行排序,根据所述数据结构体的排序确定最小用例集。
根据本发明提供的最小用例集的确定方法,所述对所有数据结构体进行排序,根据所述数据结构体的排序确定最小用例集的步骤包括:
根据所述调用数据链中包含的函数标识的个数,按照从大到小的顺序对所述数据结构体进行排序;
依次选择排序靠前的数据结构体,获取所述数据结构体中的用例标识;
将所述用例标识加入所述最小用例集,直至所述最小用例集中包含的用例标识的个数达到预设阈值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广联达科技股份有限公司,未经广联达科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210189790.7/2.html,转载请声明来源钻瓜专利网。