本发明涉及网络测试领域,具体涉及一种多虚拟机网络测试方法、装置、终端及存储介质。
背景技术:
虚拟化是当今绝大多数技术的基础,是对计算、存储、网络等核心功能模块的最底层封装。经过多年的发展,虚拟化功能已基本完善,性能方面自然成为各大厂家所关注的重点,如虚拟机的cpu、内存性能以及网络性能等。其中,网络性能测试不同于计算和存储,在单节点上就可以完成测试并输出一个精确的结果,而网络元素的构成是一张无限大的网络,每一条链路都会有流量经过,人工单独对每个虚拟机进行网络测试,效率较低。
技术实现要素:
为解决上述问题,本发明提供一种多虚拟机网络测试方法、装置、终端及存储介质。
本发明的技术方案是:一种多虚拟机网络测试方法,包括以下步骤:
编辑配置文件,并将配置文件保存在主虚拟机;所述配置文件内包含待测虚拟机信息和对应待执行命令;
在主虚拟机执行测试脚本,调用配置文件对各个待测虚拟机进行网络测试;
收集测试结果并显示。
进一步地,待测虚拟机信息包括:待测虚拟机数量,各个待测虚拟机的ip地址、端口、用户名、密码。
进一步地,待执行命令包括调用相应网络测试工具。
进一步地,主虚拟机执行测试脚本,调用配置文件以多线程方式同时对各个待测虚拟机进行网络测试。
本发明的技术方案还包括一种多虚拟机网络测试装置,包括,
配置文件编辑模块:编辑配置文件,并将配置文件保存在主虚拟机;所述配置文件内包含待测虚拟机信息和对应待执行命令;
测试脚本执行模块:执行测试脚本,调用配置文件对各个待测虚拟机进行网络测试;
测试结果收集显示模块:收集测试结果并显示。
进一步地,待测虚拟机信息包括:待测虚拟机数量,各个待测虚拟机的ip地址、端口、用户名、密码。
进一步地,待执行命令包括调用相应网络测试工具。
进一步地,测试脚本执行模块执行测试脚本,调用配置文件以多线程方式同时对各个待测虚拟机进行网络测试。
本发明的技术方案还包括一种终端,包括:
处理器;
用于存储处理器的执行指令的存储器;
其中,所述处理器被配置为执行上述任一项所述的方法。
本发明的技术方案还包括一种存储有计算机程序的计算机可读存储介质,该程序被处理器执行时实现上述任一项所述的方法。
本发明提供的一种多虚拟机网络测试方法、装置、终端及存储介质,将云平台上多虚拟机间网络流量性能测试集中到一个测试脚本,通过配置文件设置测试参数,参数设置灵活,在测试结束后生成可视化图表。本发明通过一个测试脚本调用配置文件实现同时对多个虚拟机的测试,提高了测试效率,增加了网络测试的灵活性,增强了测试工作的可靠性以及数据的真实性。
附图说明
图1是本发明具体实施例一方法流程示意图;
图2是本发明具体实施例二结构示意框图。
具体实施方式
下面结合附图并通过具体实施例对本发明进行详细阐述,以下实施例是对本发明的解释,而本发明并不局限于以下实施方式。
实施例一
如图1所示,本实施例提供一种多虚拟机网络测试方法,包括以下步骤:
s1,编辑配置文件,并将配置文件保存在主虚拟机;所述配置文件内包含待测虚拟机信息和对应待执行命令;
s2,在主虚拟机执行测试脚本,调用配置文件对各个待测虚拟机进行网络测试;
s3,收集测试结果并显示。
本方法在配置文件中设置测试参数,通过执行一测试脚本,调用配置文件,实现同时对各个多虚拟机的网络测试,测试完成后将结果进行可视化展示,方便测试人员查看。测试过程对多个虚拟机同时进行测试,测试人员进行编辑文件和执行测试脚本即可,有效提高测试效率。
需要说明的是,在进行测试前,需要进行环境配置,如安装网络测试工具、远程连接工具等。
为进一步地对本发明进行解释,以下结合上述步骤,基于本发明原理提供一具体实现方法,该具体实现方法包括以下步骤。
ss1,在虚拟化平台上创建一定数量的虚拟机;
虚拟机数量根据场景需要创建。
ss2,启动各个虚拟机,并配置ip地址,安装网络测试工具和远程连接工具;
其中网络测试工具如iperf或者netperf等,后续执行测试脚本时,即调用网络测试工具进行网络测试。
远程连接工具如paramiko模块,以便后续主虚拟机与各待测虚拟机之间进行数据通信。
ss3,在主虚拟机配置进程模块和数据分析模块;
需要说明的是,测试人员根据需要选择一虚拟机为主虚拟机作为测试发起端。
其中进程模块包括生成新进程的subprocess模块和多并发的threading模块。
数据分析模块包括dataframe和pyplot模块等。
ss4,编辑配置文件,并将配置文件保存在主虚拟机;
其中配置文件中包含待测虚拟机信息和对应待执行命令。
待测虚拟机信息包括:待测虚拟机数量,各个待测虚拟机的ip地址、端口、用户名、密码。
待执行命令包括调用相应网络测试工具。
配置文件中的内容供测试脚本调用,以与各待测虚拟机进行远程连接通信,并调用各待测虚拟机的网络测试工具进行测试,同时收集测试结果。
ss5,在主虚拟机执行测试脚本,调用配置文件对各个待测虚拟机进行网络测试;
测试脚本从配置文件获取参数,基于远程连接工具与各个待测虚拟机远程通信,发送对应待执行命令至待测虚拟机进行网络测试。
需要说明的是,主虚拟机基于进程模块通过多线程方式向各个虚拟机发送测试报文,实现多个虚拟机的同时测试,提高测试效率。
另外,本具体实现方法的脚本为python语言脚本,便于理解和使用。
ss6,收集测试结果并显示;
为方便查看,所收集测试结果可以excel表格方式呈现,同时以图表的方式展现出来,便于测试人员对比分析。
实施例二
如图2所示,本实施例提供一种多虚拟机网络测试装置,包括以下功能模块。
配置文件编辑模块101:编辑配置文件,并将配置文件保存在主虚拟机;配置文件内包含待测虚拟机信息和对应待执行命令;
测试脚本执行模块102:执行测试脚本,调用配置文件对各个待测虚拟机进行网络测试;
测试结果收集显示模块103:收集测试结果并显示。
其中,配置文件中的待测虚拟机信息包括:待测虚拟机数量,各个待测虚拟机的ip地址、端口、用户名、密码。测试脚本调用配置文件中的虚拟机信息实现远程连接通信和收发数据。配置文件中的待执行命令包括调用相应网络测试工具,需要说明的是,各待测虚拟机上配置有网络测试工具,测试脚本发送测试命令以调用网络测试工具进行测试。
另外,测试脚本执行模块执行测试脚本,调用配置文件以多线程方式同时对各个待测虚拟机进行网络测试,有效提高测试效率。
最终所收集测试结果以excel表格方式和图像形式可视化程序,便于测试人员进行分析和查看。
实施例三
本实施例提供一种终端,该终端包括处理器和存储器。
存储器用于存储处理器的执行指令。存储器可以由任何类型的易失性或非易失性存储终端或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。当存储器中的执行指令由处理器执行时,使得终端能够执行上述方法实施例中的部分或全部步骤。
处理器为存储终端的控制中心,利用各种接口和线路连接整个电子终端的各个部分,通过运行或执行存储在存储器内的软件程序和/或模块,以及调用存储在存储器内的数据,以执行电子终端的各种功能和/或处理数据。所述处理器可以由集成电路(integratedcircuit,简称ic)组成,例如可以由单颗封装的ic所组成,也可以由连接多颗相同功能或不同功能的封装ic而组成。
实施例四
本实施例提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-onlymemory,简称:rom)或随机存储记忆体(英文:randomaccessmemory,简称:ram)等。
以上公开的仅为本发明的优选实施方式,但本发明并非局限于此,任何本领域的技术人员能思之的没有创造性的变化,以及在不脱离本发明原理前提下所作的若干改进和润饰,都应落在本发明的保护范围内。
1.一种多虚拟机网络测试方法,其特征在于,包括以下步骤:
编辑配置文件,并将配置文件保存在主虚拟机;所述配置文件内包含待测虚拟机信息和对应待执行命令;
在主虚拟机执行测试脚本,调用配置文件对各个待测虚拟机进行网络测试;
收集测试结果并显示。
2.根据权利要求1所述的多虚拟机网络测试方法,其特征在于,待测虚拟机信息包括:待测虚拟机数量,各个待测虚拟机的ip地址、端口、用户名、密码。
3.根据权利要求2所述的多虚拟机网络测试方法,其特征在于,待执行命令包括调用相应网络测试工具。
4.根据权利要求1、2或3所述的多虚拟机网络测试方法,其特征在于,主虚拟机执行测试脚本,调用配置文件以多线程方式同时对各个待测虚拟机进行网络测试。
5.一种多虚拟机网络测试装置,其特征在于,包括,
配置文件编辑模块:编辑配置文件,并将配置文件保存在主虚拟机;所述配置文件内包含待测虚拟机信息和对应待执行命令;
测试脚本执行模块:执行测试脚本,调用配置文件对各个待测虚拟机进行网络测试;
测试结果收集显示模块:收集测试结果并显示。
6.根据权利要求5所述的多虚拟机网络测试装置,其特征在于,待测虚拟机信息包括:待测虚拟机数量,各个待测虚拟机的ip地址、端口、用户名、密码。
7.根据权利要求6所述的多虚拟机网络测试装置,其特征在于,待执行命令包括调用相应网络测试工具。
8.根据权利要求5、6或7所述的多虚拟机网络测试装置,其特征在于,测试脚本执行模块执行测试脚本,调用配置文件以多线程方式同时对各个待测虚拟机进行网络测试。
9.一种终端,其特征在于,包括:
处理器;
用于存储处理器的执行指令的存储器;
其中,所述处理器被配置为执行权利要求1-4任一项所述的方法。
10.一种存储有计算机程序的计算机可读存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-4任一项所述的方法。
技术总结