本发明专利技术公开了一种测试样本生成方法、装置、可读存储介质及电子设备,该方法包括:获取待测试决策引擎系统的决策流,并对所述决策流的源代码进行解析,得到解析文本;确定所述解析文本中的各个参变量,并提取各个所述参变量对应的执行条件;根据提取的执行条件确定各个所述参变量的值域信息;根据各个所述参变量的值域信息逐条生成数据并进行组合,以得到样本数据;根据预设的测试样本模板以及各个所述参变量的样本数据生成测试样本。本方法无需手动造测试样本,直接解析源代码造数,提高策略模型部署测试效率,覆盖度高,能够覆盖策略模型绝大部分的情形和结果。绝大部分的情形和结果。绝大部分的情形和结果。
【技术实现步骤摘要】
测试样本生成方法、装置、可读存储介质及电子设备
[0001]本专利技术涉及决策引擎测试领域,特别是涉及一种测试样本生成方法、装置、可读存储介质及电子设备。
技术介绍
[0002]决策引擎系统广泛应用于金融、营销等领域。目前的决策引擎如风控决策引擎、营销决策引擎、信贷决策引擎等,其质量对决策结果的正确性起着至关重要的作用,因此,在决策引擎系统在投入使用之前均需要对各项功能进行完整、严密的测试。
[0003]对决策引擎系统进行测试需要用到大量的测试样本。目前要实现在决策引擎系统生成决策流测试样本,比较传统的方式是根据部署的规则条件,通过人为来设置测试样本数据,这种方式存在耗时长,覆盖度不足的缺点,且需要考虑到策略执行的先后顺序、难以覆盖全部测试情况的问题。
技术实现思路
[0004]鉴于上述状况,有必要针对现有技术中决策引擎系统测试时样本数据获取困难的问题,提供一种测试样本生成方法、装置、可读存储介质及电子设备。
[0005]本专利技术公开了一种测试样本生成方法,包括:获取待测试决策引擎系统的决策流,并对所述决策流的源代码进行解析,得到解析文本;确定所述解析文本中的各个参变量,并提取各个所述参变量对应的执行条件;根据提取的执行条件确定各个所述参变量的值域信息;根据各个所述参变量的值域信息逐条生成数据并进行组合,以得到样本数据;根据预设的测试样本模板以及各个所述参变量的样本数据生成测试样本。
[0006]进一步的,上述测试样本生成方法,其中,所述根据各个所述参变量的值域信息逐条生成数据并进行组合,以得到样本数据的步骤包括:根据所述参变量的值域信息确定各个所述参变量的值域类型,所述值域类型包括区间和枚举值;当所述参变量的值域类型为区间时,以所述参变量的值域信息的中值作为高斯分布的均值,并根据高斯分布随机生成预设数量个数据,将所述预设数量个数据作为所述参变量的数据集;当所述参变量的值域类型为枚举值时,根据所述值域信息的各个值确定所述参变量的数据集;将各个所述参变量的数据集进行组合,得到样本数据。
[0007]进一步的,上述测试样本生成方法,其中,所述高斯分布的标准差为预设的默认值。
[0008]进一步的,上述测试样本生成方法,其中,所述提取各个所述参变量对应的执行条
件的步骤包括:将所述解析文本的内容与条件数据库中的条件特征进行比对,以提取所述解析文本中各个所述参变量对应的执行条件。
[0009]进一步的,上述测试样本生成方法,其中,所述根据各个所述参变量的值域信息逐条生成数据并进行组合,以得到样本数据的步骤包括:根据所述参变量的数据类型为各个所述参变量配置不同的默认示例;根据各个所述参变量的值域信息以及配置的默认示例,逐条生成数据并进行组合,以得到样本数据。
[0010]本专利技术还公开了一种测试样本生成装置,包括:解析模块,用于获取待测试决策引擎系统的决策流,并对所述决策流的源代码进行解析,得到解析文本;提取模块,用于确定所述解析文本中的各个参变量,并提取各个所述参变量对应的执行条件;确定模块,用于根据提取的执行条件确定各个所述参变量的值域信息;组合模块,用于根据各个所述参变量的值域信息逐条生成数据并进行组合,以得到样本数据;测试样本生成模块,用于根据预设的测试样本模板以及各个所述参变量的样本数据生成测试样本。
[0011]进一步的,上述测试样本生成装置,其中,所述组合模块具体用于:根据所述参变量的值域信息确定各个所述参变量的值域类型,所述值域类型包括区间和枚举值;当所述参变量的值域类型为区间时,以所述参变量的值域信息的中值作为高斯分布的均值,并根据高斯分布随机生成预设数量个数据,将所述预设数量个数据作为所述参变量的数据集;当所述参变量的值域类型为枚举值时,根据所述值域信息的各个值确定所述参变量的数据集;将各个所述参变量的数据集进行组合,得到样本数据。
[0012]进一步的,上述测试样本生成装置,其中,所述提取模块具体用于:将所述解析文本的内容与条件数据库中的条件特征进行比对,以提取所述解析文本中各个所述参变量对应的执行条件。
[0013]本专利技术还公开了一种电子设备,包括存储器和处理器,所述存储器存储有程序,所述程序被所述处理器执行时实现上述任一所述的方法。
[0014]本专利技术还公开了一种计算机可读存储介质,其上存储有程序,所述程序被处理器执行时实现上述任一所述的方法。
[0015]本专利技术的测试样本生成方法,通过解析决策引擎的决策流的源代码,得到该引擎的参变量和执行条件,根据各个参变量的执行条件确定其值域信息,根据该值域信息生成各个参变量的数据,并进行组合得到样本数据。本方法无需手动造测试样本,直接解析源代码造数,提高策略模型部署测试效率,覆盖度高,能够覆盖策略模型绝大部分的情形和结果。
附图说明
[0016]图1为本专利技术第一实施例的测试样本生成方法的流程图;图2为本专利技术第二实施例的测试样本生成方法的流程图;图3为本专利技术第三实施例的测试样本生成装置的结构框图;图4为本专利技术电子设备的结构示意图。
具体实施方式
[0017]下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本专利技术,而不能理解为对本专利技术的限制。
[0018]参照下面的描述和附图,将清楚本专利技术的实施例,在这些描述和附图中,具体公开了本专利技术的实施例中的一些特定实施方式,来表示实施本专利技术的实施例的原理的一些方式,但是应当理解,本专利技术的实施例的范围不受此限制。相反,本专利技术的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
[0019]请参阅图1,为本专利技术第一实施例中的测试样本生成方法,包括步骤S11~S15。
[0020]步骤S11,获取待测试决策引擎系统的决策流,并对所述决策流的源代码进行解析,得到解析文本。
[0021]针对待测试决策引擎,首先获取其决策流,该决策流是决策引擎系统内将规则、决策表、决策矩阵、复杂模型等执行顺序进行编排,以清晰直观的实现一个大的复杂的业务规则的功能程序。获取该决策流的源代码,并对该源代码进行解析得到解析文本,具体实施时,解析该源代码的过程可以是将该源代码转为预设格式文本的过程,如转换为xml格式的文本。
[0022]步骤S12,确定所述解析文本中的各个参变量,并提取各个所述参变量对应的执行条件。
[0023]该参变量的值是可变的数据,决策引擎的测试样本需要各个参变量的数据,通常进行测试时,需要参变量的大量数据样本。
[0024]步骤S13,根据提取的执行条件确定各个所述参变量的值域信息。
[0025]执行条件一般包含有字符,及各函数,具体实施时,可以将解析文本的内容与条件数据库中的条件特征进行比对,以提取该解析文本中各个参变量对应的执行条件。该条件数据库中存储有多个条件特征,该条件特征例如为条件式中所用到的字符本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种测试样本生成方法,其特征在于,包括:获取待测试决策引擎系统的决策流,并对所述决策流的源代码进行解析,得到解析文本;确定所述解析文本中的各个参变量,并提取各个所述参变量对应的执行条件;根据提取的执行条件确定各个所述参变量的值域信息;根据各个所述参变量的值域信息逐条生成数据并进行组合,以得到样本数据;根据预设的测试样本模板以及各个所述参变量的样本数据生成测试样本。2.如权利要求1所述的测试样本生成方法,其特征在于,所述根据各个所述参变量的值域信息逐条生成数据并进行组合,以得到样本数据的步骤包括:根据所述参变量的值域信息确定各个所述参变量的值域类型,所述值域类型包括区间和枚举值;当所述参变量的值域类型为区间时,以所述参变量的值域信息的中值作为高斯分布的均值,并根据高斯分布随机生成预设数量个数据,将所述预设数量个数据作为所述参变量的数据集;当所述参变量的值域类型为枚举值时,根据所述值域信息的各个值确定所述参变量的数据集;将各个所述参变量的数据集进行组合,得到样本数据。3.如权利要求2所述的测试样本生成方法,其特征在于,所述高斯分布的标准差为预设的默认值。4.如权利要求1所述的测试样本生成方法,其特征在于,所述提取各个所述参变量对应的执行条件的步骤包括:将所述解析文本的内容与条件数据库中的条件特征进行比对,以提取所述解析文本中各个所述参变量对应的执行条件。5.如权利要求1所述的测试样本生成方法,其特征在于,所述根据各个所述参变量的值域信息逐条生成数据并进行组合,以得到样本数据的步骤包括:根据所述参变量的数据类型为各个所述参变量配置不同的默认示例;根据各个所述参变量的值域信息以及配置的默认示例,逐条...
【专利技术属性】
技术研发人员:贺兰,王君,袁华生,汪剑平,彭新亮,侯海东,甘宇,曾文忠,季敩民,张雷,刘斯凡,
申请(专利权)人:江西汉辰信息技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。