一种自动化网络测试方法及装置制造方法及图纸

技术编号:37807493 阅读:11 留言:0更新日期:2023-06-09 09:37
本申请涉及一种自动化网络测试方法、装置、计算机设备、存储介质及程序产品,该方法包括以下步骤:获取命令参数并创建虚机,命令参数为预设的拓扑配置文件中的测试拓扑的类型名,拓扑配置文件还包括测试角色和测试集合;解析拓扑配置文件,并将应用于同一接口的虚机设置在同一虚拟交换机中,接口信息根据测试拓扑的连接关系及测试角色的配置生成;解析测试角色的配置,并将解析的配置参数传递给qemu程序,从而在qemu程序创建和启动虚机后,把相应的接口连接到虚拟交换机中;根据测试角色的配置对虚机进行安装配置;依次执行测试集合中的每一个测试例。有效的解决现有测试方法中难以扩展支持新的网络拓扑类型的问题,降低了开发和使用的难度。和使用的难度。和使用的难度。

【技术实现步骤摘要】
一种自动化网络测试方法及装置


[0001]本申请涉及自动化组网测试
,特别是涉及一种自动化网络测试方法、装置、计算机设备、存储介质及程序产品。

技术介绍

[0002]随着网络通信的飞速发展,各种网络通信设备不断涌现,为了验证这些网络通信设备的功能和性能,测试及开发人员需要组建特定的网络拓扑,然后在设备终端输入命令进行测试。除此之外,测试及开发人员还会开发使用一些自动化测试平台或工具来减少重复性工作,从而降低回归测试的成本,同时加快验证时间。
[0003]这类常用的开源工具有Avocado、VPP csit、DPDK DTS等。其中,Avocado基于RF框架(robot framework;一种自动化测试框架)在单元测试上独具特色,且有着强大的测试库,测试例扩展较为方便。而后两者主要用于对特定的转发拓扑进行功能和性能常规测试。
[0004]但是在实际应用中,网络拓扑往往是各种各样的,网络设备和系统也是各不相同。如果需要测试的拓扑在这些工具中尚未支持,那么就没有办法快速搭建相应的组网模型并进行自动化部署测试了。尤其在一个测试工具或系统基本稳定之后,若还需要开发人员投入太多的时间和精力去做测试框架本身的开发工作则是很不合理的。而且很多时候,使用者只是测试或运维人员,由于这些开源工具的代码量较大,因此其要求开发者具有专业的开发能力,很明显测试及运维人员无法满足该条件,而若是对新组网拓扑的支持投入太多,则使得后续获得的收益与付出的成本不成正比。

技术实现思路

[0005]基于此,有必要针对上述技术问题,提供一种自动化网络测试方法、装置、计算机设备及存储介质,能够支持常见网络拓扑类型,后续若需要支持其他拓扑类型,不需要花费太多时间和精力在框架本身的开发上,只需通过修改配置文件即可在短时间内完成支持,有效的降低了开发和使用的难度。
[0006]第一方面,本申请提供了一种自动化网络测试方法,所述方法包括:
[0007]获取命令参数并创建虚机,所述命令参数为预设的拓扑配置文件中的测试拓扑的类型名,所述拓扑配置文件还包括测试角色和测试集合;
[0008]解析拓扑配置文件,并将应用于同一接口的虚机设置在同一虚拟交换机中,所述接口信息根据测试拓扑的连接关系及测试角色的配置生成;
[0009]解析测试角色的配置,并将解析的配置参数传递给qemu程序,从而在qemu程序创建和启动虚机后,把相应的接口连接到虚拟交换机中;
[0010]根据测试角色的配置对虚机进行安装配置;
[0011]依次执行测试集合中的每一个测试例,并输出测试结果。
[0012]在其中一个实施例中,所述接口的配置包括MAC信息、PCI信息和唯一ID,所述测试角色之间的连接关系根据测试角色及接口的唯一ID确定。
[0013]在其中一个实施例中,所述获取命令参数并创建虚机,包括:
[0014]获取测试拓扑的类型名,并创建一个或多个虚机;
[0015]根据虚机在测试拓扑中所对应的测试角色,对虚机的配置进行设置。
[0016]在其中一个实施例中,所述方法还包括:
[0017]设置sys.settrace全局跟踪,用于在达到设定条件时输出停止信号;
[0018]对停止信号进行获取,并在获取到停止信号时于当前测试位置停止测试。
[0019]在其中一个实施例中,所述设定条件包括测试到达断点位置及测试失败。
[0020]在其中一个实施例中,所述输出测试结果,之前还包括:
[0021]将测试结果默认以json格式保存到相应的文本文件中;
[0022]根据输出的格式要求对文本文件中测试结果的格式进行转换。
[0023]第二方面,本申请提供了一种自动化网络测试装置,所述装置包括:
[0024]虚机创建模块,用于获取命令参数并创建虚机,所述命令参数为预设的拓扑配置文件中的测试拓扑的类型名,所述拓扑配置文件还包括测试角色和测试集合;
[0025]第一解析模块,用于解析拓扑配置文件,并将应用于同一接口的虚机设置在同一虚拟交换机中,所述接口信息根据测试拓扑的连接关系及测试角色的配置生成;
[0026]第二解析模块,用于解析测试角色的配置,并将解析的配置参数传递给qemu程序,从而在qemu程序创建和启动虚机后,把相应的接口连接到虚拟交换机中;
[0027]配置安装模块,用于根据测试角色的配置对虚机进行安装配置;
[0028]执行测试模块,用于依次执行测试集合中的每一个测试例,并输出测试结果。
[0029]第三方面,本申请提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项自动化网络测试方法。
[0030]第四方面,本申请提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项自动化网络测试方法。
[0031]第五方面,本申请提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任一项自动化网络测试方法。
[0032]上述自动化网络测试方法、装置、计算机设备及存储介质,对拓扑配置文件进行设置,以使其包括测试拓扑、测试角色及测试集合,在运行时根据拓扑配置文件中的测试拓扑的类型名参数创建虚机,并结合拓扑配置文件中测试拓扑的连接关系及测试角色的配置将应用于同一接口的虚机设置在同一虚拟交换机中,并完成接口连接,以保证虚机之间的互通连接,随后根据测试角色的配置对相应虚机参数进行配置,并根据测试集合中的测试例进行自动化网络测试,该方法抽象的分离了网络测试中的配置信息,使得其易于实现,便于扩展,并且在基本功能实现以后,开发测试人员对于网络拓扑、测试角色、测试集合的修改开发可以在较短时间内完成,让使用者可以快速搭建起相应的网络测试拓扑,有效的解决现有测试方法中难以扩展支持新的网络拓扑类型的问题,降低了开发和使用的难度。
附图说明
[0033]图1为本申请的自动化网络测试方法流程图之一;
[0034]图2为本申请的自动化网络测试方法流程图之二;
[0035]图3为本申请的自动化网络测试方法流程图之三;
[0036]图4为本申请的自动化网络测试方法流程图之四;
[0037]图5为本申请的自动化网络测试装置模块图;
[0038]图6为本申请的自动化网络测试方法基本框架结构图;
[0039]图7为本申请的自动化网络测试方法测试结果保存流程图;
[0040]图8为本申请的自动化网络测试方法的转发测试拓扑图;
[0041]图9为一个实施例的计算机设备的内部结构图。
具体实施方式
[0042]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地说明,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种自动化网络测试方法,其特征在于,所述方法包括:获取命令参数并创建虚机,所述命令参数为预设的拓扑配置文件中的测试拓扑的类型名,所述拓扑配置文件还包括测试角色和测试集合;解析拓扑配置文件,并将应用于同一接口的虚机设置在同一虚拟交换机中,所述接口信息根据测试拓扑的连接关系及测试角色的配置生成;解析测试角色的配置,并将解析的配置参数传递给qemu程序,从而在qemu程序创建和启动虚机后,把相应的接口连接到虚拟交换机中;根据测试角色的配置对虚机进行安装配置;依次执行测试集合中的每一个测试例,并输出测试结果。2.根据权利要求1所述的自动化网络测试方法,其特征在于,所述接口的配置包括MAC信息、PCI信息和唯一ID,所述测试角色之间的连接关系根据测试角色及接口的唯一ID确定。3.根据权利要求2所述的自动化网络测试方法,其特征在于,所述获取命令参数并创建虚机,包括:获取测试拓扑的类型名,并创建一个或多个虚机;根据虚机在测试拓扑中所对应的测试角色,对虚机的配置进行设置。4.根据权利要求3所述的自动化网络测试方法,其特征在于,所述方法还包括:设置sys.settrace全局跟踪,用于在达到设定条件时输出停止信号;对停止信号进行获取,并在获取到停止信号时于当前测试位置停止测试。5.根据权利要求4所述的自动化网络测试方法,其特征在于,所述设定条件包括测试到达断点位置及测试失败。6.根据权利要求5所述的...

【专利技术属性】
技术研发人员:刘邦运白雪周玉波韩国军吴婧王娟
申请(专利权)人:天翼云科技有限公司
类型:发明
国别省市:

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

1