测试用例筛选方法、设备、存储介质及程序产品技术

技术编号:39182964 阅读:11 留言:0更新日期:2023-10-27 08:30
本公开实施例提供一种测试用例筛选方法、设备、存储介质及程序产品,通过采集服务端目标接口的多个服务请求确定为备选测试用例;根据预设的代码覆盖率指标预测模型获取备选测试用例的代码覆盖率指标;根据代码覆盖率指标判断该备选测试用例是否为目标测试用例,若是,将该备选测试用例加入测试用例集合,其中测试用例集合各测试用例用于对服务端目标接口进行测试。基于代码覆盖率指标预测模型预测备选测试用例的代码覆盖率指标筛选,精简测试用例,减轻测试时服务端压力,保留对代码覆盖率贡献更大的备选测试用例,保证对目标接口代码覆盖,最大化接口测试的有效性以及问题检出率。率。率。

【技术实现步骤摘要】
测试用例筛选方法、设备、存储介质及程序产品


[0001]本公开实施例涉及计算机与网络通信
,尤其涉及一种测试用例筛选方法、设备、存储介质及程序产品。

技术介绍

[0002]目前,对服务端接口的检测,通常采用流量采集、回放、断言比较的方式进行,即通过对服务端接口在各种环境下的服务请求流量的持续采集获得数据源,再基于不同的回放策略进行流量回放验收,进而基于回放阶段的响应结果与预期是否一致判断接口相关功能是否与预期相符。
[0003]对于服务请求流量较大的服务端接口而言,采集阶段会获得大量服务请求,现有技术中通常直接将采集到的服务请求作为测试用例进行全量回放验收,会对服务端造成很大压力;并且其中存在大量冗余或无效的测试用例,对回放验收的实际意义不大,还有可能造成回放验收时的误报、甚至造成对应服务的误报警。

技术实现思路

[0004]本公开实施例提供一种测试用例筛选方法、设备、存储介质及程序产品,以对服务端接口采集的测试用例进行筛选,有效的精简测试用例,减轻服务端压力。
[0005]第一方面,本公开实施例提供一种测试用例筛选方法,包括:
[0006]采集服务端目标接口的多个服务请求,将各服务请求确定为备选测试用例;
[0007]对于任一备选测试用例,根据预设的代码覆盖率指标预测模型,获取该备选测试用例的代码覆盖率指标;
[0008]根据代码覆盖率指标判断该备选测试用例是否为目标测试用例,若是,将该备选测试用例加入测试用例集合,其中所述测试用例集合各测试用例用于对所述服务端目标接口进行测试。
[0009]第二方面,本公开实施例提供一种测试用例筛选设备,包括:
[0010]采集单元,用于采集服务端目标接口的多个服务请求,将各服务请求确定为备选测试用例;
[0011]预测单元,用于对于任一备选测试用例,根据预设的代码覆盖率指标预测模型,获取该备选测试用例的代码覆盖率指标;
[0012]判断单元,用于根据代码覆盖率指标判断该备选测试用例是否为目标测试用例,若是,将该备选测试用例加入测试用例集合,其中所述测试用例集合各测试用例用于对所述服务端目标接口进行测试。
[0013]第三方面,本公开实施例提供一种电子设备,包括:至少一个处理器和存储器;
[0014]所述存储器存储计算机执行指令;
[0015]所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面各种可能的设计所述的测试用例筛选方法。
[0016]第四方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的测试用例筛选方法。
[0017]第五方面,本公开实施例提供一种计算机程序产品,包括计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的测试用例筛选方法。
[0018]本公开实施例提供的测试用例筛选方法、设备、存储介质及程序产品,通过采集服务端目标接口的多个服务请求,将各服务请求确定为备选测试用例;对于任一备选测试用例,根据预设的代码覆盖率指标预测模型,获取该备选测试用例的代码覆盖率指标;根据代码覆盖率指标判断该备选测试用例是否为目标测试用例,若是,将该备选测试用例加入测试用例集合,其中测试用例集合各测试用例用于对服务端目标接口进行测试。通过代码覆盖率指标预测模型预测备选测试用例的代码覆盖率指标,基于代码覆盖率指标筛选,可保留对代码覆盖率贡献更大的备选测试用例,可精简测试用例,减轻测试时服务端压力,并保证测试用例对目标接口被测代码的覆盖,基于精简后的测试用例进行回放测试,可最大化接口测试的有效性以及问题检出率。
附图说明
[0019]为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0020]图1为本公开一实施例提供的测试用例筛选方法的系统示例图;
[0021]图2为本公开一实施例提供的测试用例筛选方法流程示意图;
[0022]图3为本公开另一实施例提供的测试用例筛选方法流程示意图;
[0023]图4为本公开另一实施例提供的测试用例筛选方法流程示意图;
[0024]图5为本公开另一实施例提供的测试用例筛选方法流程示意图;
[0025]图6为本公开另一实施例提供的测试用例筛选方法流程示意图;
[0026]图7为本公开一实施例提供的测试用例筛选设备的结构框图;
[0027]图8为本公开一实施例提供的电子设备的硬件结构示意图。
具体实施方式
[0028]为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
[0029]目前,对服务端接口的检测,通常采用流量采集、回放、断言比较的方式进行,即通过对服务端接口在各种环境下的服务请求流量的持续采集获得数据源,再基于不同的回放策略进行流量回放验收,进而基于回放阶段的响应结果与预期是否一致判断接口相关功能是否与预期相符。
[0030]对于服务请求流量较大的服务端接口而言,采集阶段会获得大量服务请求,现有技术中通常直接将采集到的服务请求作为测试用例进行全量回放验收,全量回放验收会对服务端造成很大压力、容易触发监控侧的误报警,尤其对于生产环境而言更是不可取的;此外,采集到的服务请求流量中存在大量重复且冗余的数据,对于接口验收而言,大量冗余的测试用例并无法进一步提升代码(或方法)覆盖率,即这部分冗余的测试用例并无法发挥很大验收检测价值。
[0031]除了上述问题外,对于一些特殊的服务端接口,服务请求流量数据中存在与时间强相关的字段参数,这些与时间强相关的字段参数直接决定了测试用例的有效生存时间。举例来讲,对于直播场景核心接口的流量请求均强依赖于直播间号(roomID)而直播间的有效时间受到直播间的实际开播情况决定,通常某个直播间的开播时间在几十分钟至几小时不等,对于在这期间所采集到的服务请求流量而言,如果未在直播房间关播前及时进行回放,则会造成全部服务请求流量的失效,无法实际对相应的接口起到检测验收的作用。更广泛的来讲,如果采集服务请求流量获取到测试用例后未及时进行回放验收检测,则会直接影响测试用例的有效性,无法有效对接口时间功能验收、造成测试验收时的误报、甚至造成对应服务的误报警。
[0032]为了解决上述技术问题,本公开提供一种测试用例筛选方法,通过采本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种测试用例筛选方法,其特征在于,包括:采集服务端目标接口的多个服务请求,将各服务请求确定为备选测试用例;对于任一备选测试用例,根据预设的代码覆盖率指标预测模型,获取该备选测试用例的代码覆盖率指标;根据代码覆盖率指标判断该备选测试用例是否为目标测试用例,若是,将该备选测试用例加入测试用例集合,其中所述测试用例集合各测试用例用于对所述服务端目标接口进行测试。2.根据权利要求1所述的方法,其特征在于,所述对于任一备选测试用例,根据预设的代码覆盖率指标预测模型,获取该备选测试用例的代码覆盖率指标,包括:将任一备选测试用例的词向量输入到所述代码覆盖率指标预测模型进行处理,得到该备选测试用例的代码覆盖率指标。3.根据权利要求1或2所述的方法,其特征在于,所述根据代码覆盖率指标判断该备选测试用例是否为目标测试用例,包括:将备选测试用例的代码覆盖率指标与测试用例集合的代码覆盖率进行比较;若备选测试用例的代码覆盖率指标高于测试用例集合的代码覆盖率,则确定该备选测试用例为目标测试用例;若备选测试用例的代码覆盖率指标不高于测试用例集合的代码覆盖率,则确定淘汰该备选测试用例。4.根据权利要求1所述的方法,其特征在于,所述根据预设的代码覆盖率指标预测模型,获取该备选测试用例的代码覆盖率指标前,还包括:对各备选测试用例进行筛选,筛除无效和/或重复的备选测试用例。5.根据权利要求4所述的方法,其特征在于,所述对各备选测试用例进行初步筛选,包括:确定各备选测试用例对应的服务端版本;对于旧版本的第一类备选测试用例,获取各第一类备选测试用例的时效和/或各第一类备选测试用例在当前版本的服务端中执行时的执行结果,筛除时效已过和/或执行失败的第一类备选测试用例;和/或对于当前版本的第二类备选测试用例,获取各第二类备选测试用例在当前版本的服务端中执行时的执行结果,筛除执行失败的第二类备选测试用例。6.根据权利要求5所述的方法,其特征在于,所述对各备选测试用例进行初步筛选,包括:获取任意两个备选测试用例之间的相似度和/或离散度;根据相似度和/或离散度对各备选测试用例进行筛选。7.根据权利要求5或6所述的方法,其特征在于,所述对各备选测试用例进行初步筛选,包括:按照预设比例从不同服务端版本的备选测试用例中筛选备选测试用例,其中,服务端版本越新的备选测试...

【专利技术属性】
技术研发人员:刘璐辰张天泽高玉军
申请(专利权)人:北京字节跳动网络技术有限公司
类型:发明
国别省市:

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

1