一种计量自动化系统数据模型测试数据自动生成方法技术方案

技术编号:39300666 阅读:9 留言:0更新日期:2023-11-12 15:52
本发明专利技术涉及计量自动化系统测试领域,公开了一种计量自动化系统数据模型测试数据自动生成方法,步骤如下:自动构建数据生成任务;查询得源数据模型数据集合列表;生成字段值候选列表;计算得到全量生成值类型字段取值列表并将字段名与字段值加入数据模型测试数据集合;计算得到其他生成值类型字段的字段名与字段值并加入数据模型测试数据集合,得到最终数据模型测试数据集合。本发明专利技术自动构建数据生成任务且任务中的数据生成规则配置信息包含了对应场景数据模型下各数据实体的生成规则,可周期性自动批量生成计量自动化系统数据模型测试数据,提高了生成测试数据的效率和准确性。提高了生成测试数据的效率和准确性。提高了生成测试数据的效率和准确性。

【技术实现步骤摘要】
一种计量自动化系统数据模型测试数据自动生成方法


[0001]本专利技术涉及电力系统高级计量基础设施测试领域,特别是涉及一种计量自动化系统数据模型测试数据自动生成方法。

技术介绍

[0002]中国南方电网公司公布的《南方电网省级计量自动化系统主站设计指导》的第二部分对省级计量自动化系统主站数据模型规范,引用和扩展营销管理系统数据模型中的客户域、电网域、计量设备域模型,对计量自动化系统主站使用的支撑数据、采集数据、统计数据以及业务数据进行建模。适用于省级计量自动化系统主站的规划、建设、运行、升级工作。计量自动化系统的数据模型涵盖了完整的系统基础数据和业务,各数据实体间存在较为复杂的关联关系。在进行系统功能测试时,不同业务模块对数据模型测试数据特征的要求不同。此外,采集数据域的数据实体的数据具有明显的时间序列特征,需要周期性构造测试数据以覆盖真实场景。同时,为了保证系统的高性能和高可靠性,需要系统测试人员构造生成大量测试数据进行系统测试和压力测试。因此,提供一种多场景覆盖、高效的数据生成方法已成为当下测试人员的迫切需求,对此,业内还尚未发现能同时满足上述需求的公开方案。

技术实现思路

[0003]本专利技术的目的在于提供一种计量自动化系统数据模型测试数据自动生成方法,以提高计量自动化系统数据模型测试数据的生成效率。
[0004]为达到上述目的,本专利技术公开了以下技术方案。
[0005]一种计量自动化系统数据模型测试数据自动生成方法,包括以下步骤。
[0006]S1,根据测试场景数据特征库,自动构建数据生成任务。
[0007]S2,根据数据生成任务中预配置的源数据模型数据查询语句,查询得到源数据模型数据集合列表。
[0008]S3,遍历当前数据生成任务中各数据生成规则的生成字段类型与生成值类型,结合源数据模型数据集合列表,组合生成全量生成值类型字段值候选列表和其他生成值类型字段值候选散列表。
[0009]S4,针对全量生成值类型字段值候选列表,使用递归算法计算得到全量生成值类型字段取值列表并将列表中的字段名与字段值加入数据模型测试数据集合。
[0010]S5,遍历数据模型测试数据集合,结合其他生成值类型字段值候选散列表,处理得到其他生成值类型字段的字段名与字段值并加入数据模型测试数据集合,至此得到最终的数据模型测试数据集合。
[0011]优选地,所述测试场景数据特征库包含基础测试场景和自定义测试场景。
[0012]基础测试场景包括但不限于正常台区、三相电压不平衡台区、三相电流不平衡台区、低电压台区、高负荷台区、高线损台区;自定义测试场景通过逐级配置场景标识、子场景标识、关联表、表字段生成规则来进行定义和维护。
[0013]正常台区的标准由测试人员自定义。
[0014]三相电压不平衡台区为台区总表电压曲线连续三个时间点电压不平衡率大于阈值的台区,其中电压不平衡率=(最大电压

最小电压)/最大电压*100%。
[0015]三相电流不平衡台区为台区总表电流曲线连续三个时间点电流不平衡率大于阈值的台区,其中电流不平衡率=(最大电流

最小电流)/最大电流*100%。
[0016]低电压台区为台区低电压用户数/台区用户总数=M的台区,其中0<M<1,低电压用户=户表电压超下限时间大于阈值。
[0017]高负荷台区为台区总表有功功率与运行容量的比大于阈值的台区。
[0018]高线损台区为台区连续K日的线损率大于阈值的台区,K为正整数。
[0019]优选地,所述步骤S1具体为:根据基础测试场景和自定义测试场景生成树形结构关联关系。
[0020]其中树的每个叶子节点对应一个数据生成任务。
[0021]优选地,所述步骤S3中。
[0022]若当前数据生成规则的生成字段类型为指定字段且生成值类型为全量生成,则遍历源数据模型数据集合列表获取字段名和对应的取值列表并放入全量生成值类型字段值候选列表。
[0023]若当前数据生成规则的生成字段类型为指定字段且生成值类型为随机生成,则遍历源数据模型数据集合列表获取字段名和对应的取值列表并放入其他生成值类型字段值候选散列表。
[0024]若当前数据生成规则的生成字段类型为指定取值范围且生成值类型为全量生成,则获得字段取值范围并放入全量生成值类型字段值候选列表。
[0025]若当前数据生成规则的生成字段类型为指定取值范围且生成值类型为随机生成,则获得字段取值范围并放入其他生成值类型字段值候选散列表。
[0026]若当前数据生成规则的生成字段类型为时间曲线且生成值类型为全量生成,则从当前数据生成规则中获取生成日期,以15分钟为间隔,将生成日期划分成96个时间点并放入全量生成值类型字段值候选列表。
[0027]若当前数据生成规则的生成字段类型为时间曲线且生成值类型为随机生成,则从当前数据生成规则中获取生成日期,以15分钟为间隔,将生成日期划分成96个时间点并放入其他生成值类型字段值候选散列表。
[0028]否则不作处理,遍历下一条数据生成规则。
[0029]优选地,所述步骤S4中全量生成值类型字段取值列表的计算规则为:对全量生成值类型字段值候选列表中各字段的候选列表求笛卡尔积。
[0030]优选地,所述步骤S5中对每条测试数据的具体处理步骤为:遍历其他生成值类型字段值候选散列表,判断当前字段对应的数据生成规则中的生成字段类型:如果生成字段类型为指定字段或指定取值范围或时间曲线,则执行流程D;如果生成字段类型为主键,则执行流程E;否则执行流程F。
[0031]D、判断当前数据生成规则中的生成值类型:如果生成值类型为随机生成,则根据当前数据生成规则中的生成字段名,从其他生成值类型字段值候选散列表中随机获取一个字段候选值,并将当前字段名和字段候选值放入数据模型测试数据集合;否则终止流程。
[0032]E、将当前数据实体的主键最大值加1作为字段值,将当前字段名和字段值放入数据模型测试数据集合。
[0033]F、判断当前数据生成规则下生成字段的数据类型:当数据类型为字符型时,执行流程F1;当数据类型为数值型时,执行流程F2;当数据类型为整型时,执行流程F3;当数据类型为长整型时,执行流程F4。
[0034]F1、随机生成指定长度的字符串作为字段值,将当前字段名和字段值放入数据模型测试数据集合。
[0035]F2、随机生成指定整数位数和小数位数范围内的浮点数作为字段值,将当前字段名和字段值放入数据模型测试数据集合。
[0036]F3、生成随机整数作为字段值,将当前字段名和字段值放入数据模型测试数据集合。
[0037]F4、生成随机长整数作为字段值,将当前字段名和字段值放入数据模型测试数据集合。
[0038]本专利技术的有益技术效果:根据测试场景数据特征库自动构建数据生成任务,且各个数据生成任务中的数据生成规则配置本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种计量自动化系统数据模型测试数据自动生成方法,其特征在于,包括以下步骤:S1,根据测试场景数据特征库,自动构建数据生成任务;S2,根据数据生成任务中预配置的源数据模型数据查询语句,查询得到源数据模型数据集合列表;S3,遍历当前数据生成任务中各数据生成规则的生成字段类型与生成值类型,结合源数据模型数据集合列表,组合生成全量生成值类型字段值候选列表和其他生成值类型字段值候选散列表;S4,针对全量生成值类型字段值候选列表,使用递归算法计算得到全量生成值类型字段取值列表并将列表中的字段名与字段值加入数据模型测试数据集合;S5,遍历数据模型测试数据集合,结合其他生成值类型字段值候选散列表,处理得到其他生成值类型字段的字段名与字段值并加入数据模型测试数据集合,至此得到最终的数据模型测试数据集合。2.根据权利要求1所述的一种计量自动化系统数据模型测试数据自动生成方法,其特征在于,所述测试场景数据特征库包含基础测试场景和自定义测试场景;基础测试场景包括但不限于正常台区、三相电压不平衡台区、三相电流不平衡台区、低电压台区、高负荷台区、高线损台区;自定义测试场景通过逐级配置场景标识、子场景标识、关联表、表字段生成规则来进行定义和维护;正常台区的标准由测试人员自定义;三相电压不平衡台区为台区总表电压曲线连续三个时间点电压不平衡率大于阈值的台区,其中电压不平衡率=(最大电压

最小电压)/最大电压*100%;三相电流不平衡台区为台区总表电流曲线连续三个时间点电流不平衡率大于阈值的台区,其中电流不平衡率=(最大电流

最小电流)/最大电流*100%;低电压台区为台区低电压用户数/台区用户总数=M的台区,其中0<M<1,低电压用户=户表电压超下限时间大于阈值;高负荷台区为台区总表有功功率与运行容量的比大于阈值的台区;高线损台区为台区连续K日的线损率大于阈值的台区,K为正整数。3.根据权利要求2所述的一种生成计量自动化系统数据模型测试数据自动生成方法,其特征在于,所述步骤S1具体为:根据基础测试场景和自定义测试场景生成树形结构关联关系;其中树的每个叶子节点对应一个数据生成任务。4.根据权利要求1所述的一种计量自动化系统数据模型测试数据自动生成方法,其特征在于,所述步骤S3中:若当前数据生成规则的生成字段类型为指定字段且生成值类型为全量生成,则遍历源数据模型数据集合列表获取字段名和对应的取值列表并放入全量生成值类型字段值候选列表;若当前数据生成规则的生成字段类型为指定字段且生成值类型为...

【专利技术属性】
技术研发人员:吴士军肖新光张华庆李思国马齐齐
申请(专利权)人:青岛鼎信通讯科技有限公司青岛鼎信通讯电力工程有限公司
类型:发明
国别省市:

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

1