一种测试用例生成方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:27810487 阅读:21 留言:0更新日期:2021-03-30 09:42
本申请涉及一种测试用例生成方法、装置、计算机设备和存储介质,属于软件测试技术领域。方法包括:获取目标服务的接口参数信息,接口参数信息包括解析目标服务的实际流量数据而得到的所有接口参数各自的参数实际值;根据各个接口参数的参数实际值以及目标服务的特征信息对所有接口参数进行机器学习,得到各个接口参数的参数取值规则;根据各个接口参数的参数取值规则,对各个接口参数进行赋值,生成目标服务的多个测试用例。本发明专利技术能够快速、高效地生成目标服务的测试用例,提高测试用例的生成效率,并能够保证测试用例的准确性。并能够保证测试用例的准确性。并能够保证测试用例的准确性。

【技术实现步骤摘要】
一种测试用例生成方法、装置、计算机设备和存储介质


[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]筛选出所述排序结果中排在前N位的测试用例,以作为最优测试用例,其中,N大于等于1。
[0029]第二方面,提供了一种测试用例生成装置,所述装置包括:
[0030]参数获取模块,用于获取目标服务的接口参数信息,所述接口参数信息包括解析所述目标服务的实际流量数据而得到的所有接口参数各自的参数实际值;
[0031]机器学习模块,用于根据各个所述接口参数的参数实际值以及所述目标服务的特征信息对所有所述接口参数进行机器学习,得到各个所述接口参数的参数取值规则;
[0032]用例生成模块,用于根据各个所述接口参数的参数取值规则,对各个所述接口参数进行赋值,生成所述目标服务的多个测试用例。
[0033]进一步地,所述装置还包括参数规则处理模块,所述参数规则处理模块具体用于:
[0034]针对每一个所述接口参数,判断所述接口参数是否预设有参数取值规则,若有,则将所述接口参数的预设的参数取值规则以及通过机器学习得到的参数取值规则推送至用户端,以供用户选择;
[0035]接收所述用户端针对所述接口参数的参数取值规则的选择信息,并将所述选择信息指示的参数取值规则确定为所述接口参数的参数取值规则。
[0036]进一步地,所述用例生成模块具体用于:
[0037]根据各个所述接口参数的参数取值规则,并结合等价类划分或/和边界值法对各个所述接口参数进行赋值,生成所述目标服务的多个测试用例。
[0038]进一步地,所述装置还包括用例筛选模块,所述用例筛选模块包括:
[0039]用例执行单元,用于通过测试用例执行引擎执行多个所述测试用例,获得各个所述测试用例对应的代码覆盖数据;
[0040]用例筛选单元,用于根据各个所述测试用例对应的代码覆盖数据,对所有所述测试用例进行筛选。
[0041]进一步地,所述用例筛选单元包括:
[0042]获取子单元,获取各个所述测试用例对应的代码覆盖数据之间的相似度;
[0043]分类子单元,用于根据各个所述相似度,对各个所述测试用例进行分类,得到多个测试用例子集;
[0044]筛选子单元,用于根据每个所述测试用例子集包含的测试用例对应的代码覆盖数据,对每个所述测试用例子集进行筛选。
[0045]进一步地,所述获取子单元具体用于:
[0046]根据各个所述测试用例对应的代码覆盖数据,对各个所述测试用例与各个所述测试用例覆盖到的程序代码段进行绑定;
[0047]针对所有所述测试用例中的每一个目标测试用例,计算所述目标测试用例绑定的程序代码段与所有所述测试用例中的其他测试用例绑定的程序代码段之间的相同程度,并根据计算结果,获取各个所述测试用例对应的代码覆盖数据之间的相似度;...

【技术保护点】

【技术特征摘要】
1.一种测试用例生成方法,其特征在于,所述方法包括:获取目标服务的接口参数信息,所述接口参数信息包括解析所述目标服务的实际流量数据而得到的所有接口参数各自的参数实际值;根据各个所述接口参数的参数实际值以及所述目标服务的特征信息对所有所述接口参数进行机器学习,得到各个所述接口参数的参数取值规则;根据各个所述接口参数的参数取值规则,对各个所述接口参数进行赋值,生成所述目标服务的多个测试用例。2.根据权利要求1所述的方法,其特征在于,所述根据各个所述接口参数的参数取值规则,对各个所述接口参数进行赋值,生成所述目标服务的多个测试用例步骤之前,所述方法还包括:针对每一个所述接口参数,判断所述接口参数是否预设有参数取值规则,若有,则将所述接口参数的预设的参数取值规则以及通过机器学习得到的参数取值规则推送至用户端,以供用户选择;接收所述用户端针对所述接口参数的参数取值规则的选择信息,并将所述选择信息指示的参数取值规则确定为所述接口参数的参数取值规则。3.根据权利要求1所述的方法,其特征在于,所述根据各个所述接口参数的参数取值规则,对各个所述接口参数进行赋值,生成所述目标服务的多个测试用例,包括:根据各个所述接口参数的参数取值规则,并结合等价类划分或/和边界值法对各个所述接口参数进行赋值,生成所述目标服务的多个测试用例。4.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:通过测试用例执行引擎执行多个所述测试用例,获得各个所述测试用例对应的代码覆盖数据;根据各个所述测试用例对应的代码覆盖数据,对所有所述测试用例进行筛选。5.根据权利要求4所述的方法,其特征在于,所述根据各个所述测试用例对应的代码覆盖数据,对所有所述测试用例进行筛选,包括:获取各个所述测试用例对应的代码覆盖数据之间的相似度,并根据各个所述相似度,对各个所述测试用例进行分类,得到多个测试用例子集;根据每个所述测试用例子集包含的测试用例对应的代码覆盖数据,对每个所述测试用例子集进行筛选。6.根据权利要求5所述的方法,其特征在于,所述获取各个所述测试用例对...

【专利技术属性】
技术研发人员:曾旻
申请(专利权)人:上海品顺信息科技有限公司
类型:发明
国别省市:

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

1