测试报文的获取方法及装置、存储介质制造方法及图纸

技术编号:35360768 阅读:26 留言:0更新日期:2022-10-29 17:58
本申请公开了一种测试报文的获取方法及装置、存储介质。该方法包括:测试设备获取测试操作类型和目标模型包括的第一节点的信息,并根据目标模型和测试操作类型获取测试报文,测试报文中包括测试操作类型和第一节点的信息;测试设备向待测的网络设备发送测试报文。本申请由测试设备根据目标模型和测试操作类型获取测试报文,有助于提高获取测试报文的效率和灵活性。灵活性。灵活性。

【技术实现步骤摘要】
测试报文的获取方法及装置、存储介质


[0001]本申请涉及网络
,特别涉及一种测试报文的获取方法及装置、存储介质。

技术介绍

[0002]YANG语言是互联网工程任务组(Internet engineering task force,IETF)标准组织在请求意见稿(request for comments,RFC)6020中定义的一种目标模型化描述语言,通过YANG语言,基于网络配置协议(network configuration protocol,NETCONF)对网络设备(例如路由器)的数据(例如配置数据、状态数据)进行建模得到YANG模型。
[0003]在建立YANG模型之后,通常需要对YANG模型进行测试,以确保建立的YANG模型符合网络设备的业务要求。目前,由测试人员根据YANG模型配置测试用例,并根据测试用例构建测试报文,然后由网络设备根据测试人员构建的测试报文进行YANG模型测试。目前构建测试报文的效率较低,灵活性较差。

技术实现思路

[0004]本申请提供了一种测试报文的获取方法及装置、存储介质。本申请的技术方案如下:
[0005]第一方面,提供一种测试报文的获取方法,该方法由测试设备执行,该方法包括:获取测试操作类型和目标模型包括的第一节点的信息;根据目标模型和测试操作类型获取测试报文,测试报文中包括测试操作类型和第一节点的信息;向待测的网络设备发送测试报文。
[0006]本申请提供的技术方案,由测试设备根据目标模型中的第一节点的信息和测试操作类型生成测试报文,有助于提高获取测试报文的效率和灵活性,降低对测试人员的要求。
[0007]可选地,根据目标模型和测试操作类型获取测试报文,包括:获取第一节点在目标模型中的位置;根据第一节点在目标模型中的位置、测试操作类型和第一节点的信息,生成测试报文,第一节点的信息在测试报文中的位置与第一节点在目标模型中的位置匹配。
[0008]本申请提供的技术方案,测试设备根据第一节点在目标模型中的位置、测试操作类型和第一节点的信息生成测试报文,可以便于网络设备收到该测试报文后,根据该测试报文对目标模型中的第一节点执行该测试操作类型对应的测试操作,从而对第一节点进行测试。
[0009]可选地,根据目标模型和测试操作类型获取测试报文,包括:根据目标模型和第一节点的信息,获取第一节点的父节点的信息;根据第一节点的信息和第一节点的父节点的信息,获取第一约束条件,第一约束条件用于对第一节点和第一节点的父节点进行合法性验证;基于第一约束条件对第一节点和第一节点的父节点进行合法性验证;在第一节点和第一节点的父节点通过合法性验证后,获取测试报文,测试报文包括测试操作类型、第一节点的信息和第一节点的父节点的信息。
[0010]本申请提供的技术方案,测试设备通过对第一节点和第一节点的父节点进行合法
性验证,可以保证第一节点和第一节点的父节点的合法性(第一节点关联的约束条件和第一节点的父节点关联的约束条件不冲突即合法),从而保证获取的测试报文的准确性。
[0011]可选地,基于第一约束条件对第一节点和第一节点的父节点进行合法性验证,包括:基于第一约束条件构建第一链表,第一链表中包括至少一条路径,路径上的元素与第一约束条件中的子条件关联;基于第一链表确定第一路径,第一路径上的元素关联的子条件不冲突,且第一路径上的元素关联的节点包括第一节点和第一节点的父节点。
[0012]可选地,根据目标模型和测试操作类型获取测试报文,包括:根据目标模型和第一节点的信息,获取第一节点的父节点的信息和第一节点的兄弟节点的信息;根据第一节点的信息、第一节点的父节点的信息和第一节点的兄弟节点的信息,获取第二约束条件,第二约束条件用于对第一节点、第一节点的父节点和第一节点的兄弟节点进行合法性验证;基于第二约束条件对第一节点、第一节点的父节点和第一节点的兄弟节点进行合法性验证;在第一节点、第一节点的父节点和第一节点的兄弟节点通过合法性验证后,获取测试报文,测试报文包括测试操作类型、第一节点的信息、第一节点的父节点的信息和第一节点的兄弟节点的信息。
[0013]本申请提供的技术方案,测试设备通过对第一节点、第一节点的父节点和第一节点的兄弟节点进行合法性验证,可以保证第一节点、第一节点的父节点和第一节点的兄弟节点的合法性(第一节点关联的约束条件、第一节点的父节点关联的约束条件和第一节点的兄弟节点关联的约束条件不冲突即合法),从而保证获取的测试报文的准确性。
[0014]可选地,基于第二约束条件对第一节点、第一节点的父节点和第一节点的兄弟节点进行合法性验证,包括:基于第二约束条件构建第二链表,第二链表中包括至少一条路径,路径上的元素与第二约束条件中的子条件关联;基于第二链表确定第二路径,第二路径上的元素关联的子条件不冲突,且第二路径上的元素关联的节点包括第一节点、第一节点的父节点和第一节点的兄弟节点。
[0015]可选地,测试报文还包括第一节点的调整后的取值,根据目标模型和测试操作类型获取测试报文,还包括:根据第一节点的信息获取第三约束条件,第三约束条件用于对第一节点的取值进行调整;根据第三约束条件对第一节点的取值进行调整,获取第一节点的调整后的取值。
[0016]本申请提供的技术方案,测试设备通过对第一节点的取值进行调整,可以保证第一节点的取值满足相应的约束条件,从而保证测试报文中的第一节点的取值的合理性。
[0017]可选地,第一约束条件还包括目标模型包括的第二节点的信息,测试报文还包括第一节点的调整后的取值和第二节点的调整后的取值,根据目标模型和测试操作类型获取测试报文,还包括:根据第一节点的信息和第二节点的信息获取第四约束条件,第四约束条件用于对第一节点的取值和第二节点的取值进行调整;根据第四约束条件对第一节点的取值和第二节点的取值进行调整,获取第一节点的调整后的取值和第二节点的调整后的取值。
[0018]本申请提供的技术方案,测试设备通过对第一节点的取值和第二节点的取值进行调整,可以保证第一节点的取值和第二节点的取值均满足相应的约束条件,从而保证测试报文中的第一节点的取值和第二节点的取值的合理性。
[0019]可选地,测试报文还包括第一节点的调整后的取值和第一节点的兄弟节点的调整
后的取值,根据目标模型和测试操作类型获取测试报文,还包括:根据第一节点的信息和第一节点的兄弟节点的信息获取第五约束条件,第五约束条件用于对第一节点的取值和第一节点的兄弟节点的取值进行调整;根据第五约束条件对第一节点的取值和第一节点的兄弟节点的取值进行调整,获取第一节点的调整后的取值和第一节点的兄弟节点的调整后的取值。
[0020]本申请提供的技术方案,测试设备通过对第一节点的取值和第一节点的兄弟节点的取值进行调整,可以保证第一节点的取值和第一节点的兄弟节点的取值均满足相应的约束条件,从而保证测试报文中的第一节点的取值和第一节点的兄弟节点的取值的合理性。
[0021]可选地,第二约束条件还包括目本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种测试报文的获取方法,其特征在于,所述方法由测试设备执行,所述方法包括:获取测试操作类型和目标模型包括的第一节点的信息;根据所述目标模型和所述测试操作类型获取测试报文,所述测试报文中包括所述测试操作类型和所述第一节点的信息;向待测的网络设备发送所述测试报文。2.根据权利要求1所述的方法,其特征在于,所述根据所述目标模型和所述测试操作类型获取测试报文,包括:获取所述第一节点在所述目标模型中的位置;根据所述第一节点在所述目标模型中的位置、所述测试操作类型和所述第一节点的信息,生成所述测试报文,所述第一节点的信息在所述测试报文中的位置与所述第一节点在所述目标模型中的位置匹配。3.根据权利要求1所述的方法,其特征在于,所述根据所述目标模型和所述测试操作类型获取测试报文,包括:根据所述目标模型和所述第一节点的信息,获取所述第一节点的父节点的信息;根据所述第一节点的信息和所述第一节点的父节点的信息,获取第一约束条件,所述第一约束条件用于对所述第一节点和所述第一节点的父节点进行合法性验证;基于所述第一约束条件对所述第一节点和所述第一节点的父节点进行合法性验证;在所述第一节点和所述第一节点的父节点通过合法性验证后,获取所述测试报文,所述测试报文包括所述测试操作类型、所述第一节点的信息和所述第一节点的父节点的信息。4.根据权利要求3所述的方法,其特征在于,所述基于所述第一约束条件对所述第一节点和所述第一节点的父节点进行合法性验证,包括:基于所述第一约束条件构建第一链表,所述第一链表中包括至少一条路径,所述路径上的元素与所述第一约束条件中的子条件关联;基于所述第一链表确定第一路径,所述第一路径上的元素关联的子条件不冲突,且所述第一路径上的元素关联的节点包括所述第一节点和所述第一节点的父节点。5.根据权利要求1所述的方法,其特征在于,所述根据所述目标模型和所述测试操作类型获取测试报文,包括:根据所述目标模型和所述第一节点的信息,获取所述第一节点的父节点的信息和所述第一节点的兄弟节点的信息;根据所述第一节点的信息、所述第一节点的父节点的信息和所述第一节点的兄弟节点的信息,获取第二约束条件,所述第二约束条件用于对所述第一节点、所述第一节点的父节点和所述第一节点的兄弟节点进行合法性验证;基于所述第二约束条件对所述第一节点、所述第一节点的父节点和所述第一节点的兄弟节点进行合法性验证;在所述第一节点、所述第一节点的父节点和所述第一节点的兄弟节点通过合法性验证后,获取所述测试报文,所述测试报文包括所述测试操作类型、所述第一节点的信息、所述第一节点的父节点的信息和所述第一节点的兄弟节点的信息。6.根据权利要求5所述的方法,其特征在于,所述基于所述第二约束条件对所述第一节
点、所述第一节点的父节点和所述第一节点的兄弟节点进行合法性验证,包括:基于所述第二约束条件构建第二链表,所述第二链表中包括至少一条路径,所述路径上的元素与所述第二约束条件中的子条件关联;基于所述第二链表确定第二路径,所述第二路径上的元素关联的子条件不冲突,且所述第二路径上的元素关联的节点包括所述第一节点、所述第一节点的父节点和所述第一节点的兄弟节点。7.根据权利要求1至6任一所述的方法,其特征在于,所述测试报文还包括所述第一节点的调整后的取值,所述根据所述目标模型和所述测试操作类型获取测试报文,还包括:根据所述第一节点的信息获取第三约束条件,所述第三约束条件用于对所述第一节点的取值进行调整;根据所述第三约束条件对所述第一节点的取值进行调整,获取所述第一节点的调整后的取值。8.根据权利要求3或4所述的方法,其特征在于,所述第一约束条件还包括所述目标模型包括的第二节点的信息,所述测试报文还包括所述第一节点的调整后的取值和所述第二节点的调整后的取值,所述根据所述目标模型和所述测试操作类型获取测试报文,还包括:根据所述第一节点的信息和所述第二节点的信息获取第四约束条件,所述第四约束条件用于对所述第一节点的取值和所述第二节点的取值进行调整;根据所述第四约束条件对所述第一节点的取值和所述第二节点的取值进行调整,获取所述第一节点的调整后的取值和所述第二节点的调整后的取值。9.根据权利要求5或6所述的方法,其特征在于,所述测试报文还包括所述第一节点的调整后的取值和所述第一节点的兄弟节点的调整后的取值,所述根据所述目标模型和所述测试操作类型获取测试报文,还包括:根据所述第一节点的信息和所述第一节点的兄弟节点的信息获取第五约束条件,所述第五约束条件用于对所述第一节点的取值和所述第一节点的兄弟节点的取值进行调整;根据所述第五约束条件对所述第一节点的取值和所述第一节点的兄弟节点的取值进行调整,获取所述第一节点的调整后的取值和所述第一节点的兄弟节点的调整后的取值。10.根据权利要求5或6所述的方法,其特征在于,所述第二约束条件还包括所述目标模型包括的第三节点的信息,所述测试报文还包括所述第三节点的调整后的取值、所述第一节点的调整后的取值和所述第一节点的兄弟节点的调整后的取值,所述根据所述目标模型和所述测试操作类型获取测试报文,还包括:根据所述第一节点的信息、所述第一节点的兄弟节点的信息和所述第三节点的信息获取第六约束条件,所述第六约束条件用于对所述第一节点的取值、所述第一节点的兄弟节点的取值和所述第三节点的取值进行调整;根据所述第六约束条件对所述第一节点的取值、所述第一节点的兄弟节点的取值和所述第三节点的取值进行调整,获取所述第一节点的调整后的取值、所述第一节点的兄弟节点的调整后的取值和所述第三节点的调整后的取值。11.根据权利要求1至10任一项所述的方法,其特征在于,所述第一节点的信息包括所述第一节点的名称、所述第一节点的类型和所述第一节点的属性信息中的至少一种,所述第一节点的类型包括容器、叶子、叶子列表、列表、选择和事
件中的一种。12.根据权利要求1至11任一项所述的方法,其特征在于,所述方法还包括:获取m个模型文件,每个所述模型文件用于描述所述目标模型中的至少一个子模型,每个所述子模型包括至少一个所述节点,m为正整数;根据所述m个模型文件确定n个子模型,n为正整数;根据所述n个子模型确定所述目标模型。13.根据权利要求12所述的方法,其特征在于,所述根据所述m个模型文件确定n个子模型包括:对于每个所述模型文件,根据所述模型文件确定至少一个节点以及节点之间的关联关系;根据所述至少一个节点和节点之间的关联关系构建子模型。14.根据权利要求12或13所述的方法,其特征在于,所述根据所述n个子模型确定所述目标模型包括:获取所述n个子模型中的每个子模型中的各个节点的信息;根据所述n个子模型中的节点的信息构建所述目标模型。15.根据权利要求14所述的方法,其特征在于,所述节点的信息包括引用声明、挂接声明、归属声明和基础声明中的至少一种,所述根据所述n个子模型中的节点的信息构建所述目标模型,包括:对于所述n个子模型中的每个子模型:如果所述子模型中的节点的信息包括引用声明,将所述引用声明对应的引用信息引入至所述引用声明对应的节点;如果所述子模型中的节点的信息包括挂接声明,将所述挂接声明对应的挂接信息挂接至所述挂接声明对应的节点;如果所述子模型中的节点的信息包括归属声明,将所述子模型引入至所述归属声明对应的归属信息所指示的子模型中;如果所述子模型中的节点的信息包括基础声明,根据所述基础声明对应的节点在所述子模型中的位置在基础模型中创建相应的节点,所述基础模型是所述n个子模型中的一个或者所述基础模型由所述n个子模型中的至少两个子模型经过引入操作得到。16.根据权利要求1至15任一项所述的方法,其特征在于,所述测试...

【专利技术属性】
技术研发人员:经维波
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1