本发明专利技术提供一种算法模块测试方法,包括:获取待测模块的多组测试向量,所述待测模块的每个功能至少对应一组所述测试向量,其中,每组测试向量包含多个参数;依据所述多组测试向量,对所述待测模块的多个功能进行定向测试;当所述待测模块的至少一个功能定向测试通过时,对所述待测模块的每个参数依据对应的约束进行随机取值;采用每个参数的随机取值对所述待测模块进行随机测试。本发明专利技术提供的算法模块测试方法及装置,能够以定向测试的方式首先定向验证功能的正确性,再以随机测试测试的方式来覆盖包括边界情况在内的多种场景或者组合场景,有利于对算法模块验证的完备性和全面性进行提高。进行提高。进行提高。
【技术实现步骤摘要】
算法模块测试方法及装置
[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]可选地,随机测试模块包括:
[0044]范围采集子模块,用于采集已完成的定向测试和随机测试中各参数的覆盖范围;
[0045]终止测试子模块,用于当每个参数的覆盖范围包括了对应阈值内所有参数取值时,终止随机测试。
[0046]可选地,随机取值模块包括:
[0047]约束输入子模块,用于将所述约束输入至程序模型;
[0048]参数获取子模块,用于获取所述程序模型依据所述约束对每个参数进行的随机取值以及与多个随机取值对应的预期输出。
[0049]可选地,随机测试模块包括:
[0050]参数转换子模块,用于将每个参数的随机取值进行转换,作为待测模块的输入;
[0051]输出比对子模块,用于将待测模块的输出与预期输出进行对比,当待测模块的输出与预期输出一致时,确定验证通过。
[0052]可选地,还包括:空间清理模块,用于当所述待测模块的至少一个功能定向测试通过时,对对应的测试向量进行删除。
[0053]可选地,随机取值模块包括:
[0054]关联约束子模块,用于依据多个参数之间的关联关系,确定多个参数之间的关联约束;
[0055]关联取值子模块,用于当其中一个参数已完成随机取值时,依据多个参数之间的关联约束,对多个参数中的其余参数进行取值。
[0056]在本专利技术提供的技术方案中,首先以测试向量对算法模块的功能正确性进行验证,能够避免由于随机取值而造成的前期测试不易查错的情形,从而,在测试前期能够快速的推进测试进程。在算法模块的定向测试通过时,再采用对参数进行随机取值的方式进行随机测试,从而,在定向测试的基础上,将测试向量库进行扩大,对算法模块的边界情况或者极限情况,或者多场景多功能交叠的场景,或者前期没考虑过的功能组合的场景进行覆盖,有利于提高测试的完备性和全面性。
附图说明
[0057]图1为本专利技术一实施例算法模块测试方法的流程图;
[0058]图2为本专利技术一实施本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种算法模块测试方法,其特征在于,包括:获取待测模块的多组测试向量,所述待测模块的每个功能至少对应一组所述测试向量,其中,每组测试向量包含多个参数;依据所述多组测试向量,对所述待测模块的多个功能进行定向测试;当所述待测模块的至少一个功能定向测试通过时,对所述待测模块的每个参数依据对应的约束进行随机取值;采用每个参数的随机取值对所述待测模块进行随机测试。2.根据权利要求1所述的方法,其特征在于,对所述待测模块的每个参数依据对应的约束进行随机取值包括:依据协议构建每个参数的阈值约束;在对应阈值约束的范围内,对每个参数进行随机取值。3.根据权利要求2所述的方法,其特征在于,对所述待测模块的每个参数依据对应的约束进行随机取值包括:采集已完成的定向测试和随机测试中各参数的覆盖范围;针对每个参数,将覆盖范围之外的参数取值权重进行提高,确定权重约束;依据权重约束,对对应的参数进行随机取值。4.根据权利要求3所述的方法,其特征在于,采用每个参数的随机取值对所述待测模块进行随机测试包括:采集已完成的定向测试和随机测试中各参数的覆盖范围;当每个参数的覆盖范围包括了对应阈值内所有参数取值时,终止随机测试。5.根据权利要求1所述的方法,其特征在于,对所述待测模块的每个参数依据对应的约束进行随机取值包括:将所述约束输入至程序模型;获取所述程序模型依据所述约束对每个参数进行的随机取值以及与多个随机取值对应的预期输出。6.根据权利要求5所述的方法,其特征在于,采用每个参数的随机取值对所述待测模块进行随机测试包括:将每个参数的随机取值进行转换,作为待测模块的输入;将待测模块的输出与预期输出进行对比,当待测模块的输出与预期输出一致时,确定验证通过。7.根据权利要求1所述的方法,其特征在于,当所述待测模块的至少一个功能定向测试通过时,还包括:对对应的测试向量进行删除。8.根据权利要求1所述的方法,其特征在于,对所述待测模块的每个参数依据对应的约束进行随机取值包括:依据多个参数之间的关联关系,确定多个参数之间的关联约束;当其中一个参数已完成随机取值时,依据多个参数之间的关联约束,对多个参数中的其余参数进行取值。9.一种算法模块测试装置,其特征在于,包括:获取模块,用于获取待测模块的多组测试向量...
【专利技术属性】
技术研发人员:张银婷,张旭峰,何向东,杨茜,刘香利,
申请(专利权)人:西安紫光展锐科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。