本发明属于计算机安全,具体涉及一种防火墙升级自动化测试系统、装置及方法、计算机存储介质。
背景技术:
1、在防火墙产品的测试过程中,需要对系统软件的版本升级进行验证。此过程通常需要人工上传升级软件包到防火墙操作系统中并执行升级动作,等待升级完成后验证系统功能。在防火墙产品的测试中,软件升级测试是一种基本的测试场景,升级测试流程包括:上传升级包到特定的防火墙操作系统下,升级过程中需要人工值守以确认升级过程运行是否正常,升级完成后需要验证防火墙系统是否能够正常提供服务。且对于一个防火墙产品,伴随时间推移会发布许多个不同的软件包,因此还可能需要依据软件包的发布时间顺序进行连续的升级测试。而上述流程中会出现操作繁琐、耗时长、重复相同工作和发生故障无法及时发现等问题,若问题不解决会产生耗费人力、无法及时发现软件升级中的产品缺陷等后果。
2、现有的防火墙升级方法提出了一种利用计算机脚本程序技术实现防火墙自动升级的解决方案,请参阅图1,具体方法为:采集防火墙中当前版本文件的版本信息,根据当前版本属性,在版本集合中确定目标版本文件的目标版本属性;基于当前版本属性和目标版本属性的差异升级所述防火墙,目的为解决了现有防火墙升级效率低的技术问题。
3、然而,上述方案仅仅提供了防火墙自动升级的方法和装置,仅实现代替用户对防火墙的升级的手工操作,主要为解决防火墙升级效率低的问题,而并不是为了提高防火墙软件测试过程中对于软件升级测试的工作效率。其次,该现有发明的核心方法在于针对不同硬件版本、不同型号的防火墙,自动匹配和选择一个最适合的版本升级包进行升级,该核心方法并不适用于更多的防火墙产品。
技术实现思路
1、本发明提供一种防火墙升级自动化测试系统、装置及方法、计算机存储介质,能够实现代替人工进行防火墙软件升级和升级完成后的测试验证工作。
2、本发明通过下述技术方案实现:
3、一方面,本发明提供一种防火墙升级自动化测试方法,包括:获取目标防火墙运行的软件系统的版本信息和硬件型号;根据目标防火墙的版本信息和硬件型号,获取可供升级的新版本软件包;当可供升级的新版本软件包数量不止一个时,生成升级路径树;根据升级路径树,对目标防火墙进行升级;在目标防火墙每一次升级完成后,对当前版本目标防火墙进行检测,判断防火墙是否能够正常运行;在当前版本目标防火墙正常运行时,判断目标防火墙是否为最新版本,如果不是,则重复根据升级路径树,对目标防火墙进行升级和在目标防火墙每一次升级完成后,对当前版本防火墙进行检测,判断防火墙是否能够正常运行。
4、在其中一些实施例中,生成升级路径树包括:根据当前所处预设模式,生成升级路径树;具体的,包括:在当前所处预设模式为顺序升级模式时,按照可供升级的软件包发布时间先后顺序生成序列,依次生成路径节点;在当前所处预设模式为跳板升级模式时,按照可供升级的软件包发布时间获取中间版本和最新版本,得到升级路径树为当前版本、中间版本和最新版本;在当前所处预设模式为升级最新模式时,得到升级路径树为当前版本、最新版本。
5、在其中一些实施例中,根据当前所处预设模式,生成升级路径树之后,还包括以下步骤:判断可供升级的软件包版本中是否存在指定升级版本;若存在,判断指定升级版本是否在升级路径树中;若指定升级版本没有在升级路径树中,则将指定升级版本插入至升级路径树中。
6、在其中一些实施例中,对目标防火墙进行升级包括:通过ftp协议,将软件版本数据库存储的相应版本号的软件包拷贝到目标防火墙的操作系统的文件系统下;基于对应的软件包,对目标防火墙下发升级操作的命令。
7、在其中一些实施例中,对目标防火墙进行升级的过程中,还包括:对目标防火墙升级状态进行监测,判断目标防火墙升级是否完成。
8、在其中一些实施例中,对目标防火墙升级状态进行监测,判断目标防火墙升级是否完成包括:获取目标防火墙开始升级和升级完成的标志;获取目标防火墙升级过程中是否存在发生异常的标志;当获取到目标防火墙开始升级和升级完成的标志,且未获取到目标防火墙升级过程中存在发生异常的标志,则判定目标防火墙当前路径节点升级完成。
9、另一方面,本申请提供一种防火墙升级自动化测试系统,包括:检测模块,检测模块被配置为连接目标防火墙,获取目标防火墙运行的版本信息和硬件型号;控制模块,控制模块被配置为读取目标防火墙的版本数据库,获取可供升级的新版本软件包;并生成本次任务的升级路径树;自动化测试脚本运行模块,自动化测试脚本运行模块被配置为提供运行环境,触发自动化测试脚本的执行开始,判断测试结果并上报控制模块,并保存测试结果。
10、在其中一些实施例中,防火墙升级自动化测试系统还包括监测模块,检测模块被配置为进行与目标防火墙之间的网络通信,实时获取目标防火墙的系统状态;控制模块还被配置为实时判断流程的进度和状态,对相关子模块下发指令,直到任务结束后退出程序。
11、本申请还提供一种防火墙升级自动化测试装置,包括:数据获取器,数据获取器被配置为获取目标防火墙运行的软件系统的版本信息和硬件型号,以及目标防火墙的版本数据库;存储器,存储器中存储有计算机程序;处理器,处理器执行存储器中的计算机程序,以实现上述实施例中任一项的防火墙升级自动化测试方法。
12、本申请还提供一种计算机存储介质,其上存储有计算机程序,计算机程序被处理器进行加载,以执行上述实施例中任一项的防火墙升级自动化测试方法。
13、本发明与现有技术相比,具有以下优点及有益效果:
14、(1)本发明提供了一种防火墙自动升级方法,尤其是在防火墙软件测试领域,通过程序替代人工,自动化地执行对防火墙软件的升级操作,同时提供监控机制和自动化测试验证机制,实现了自动化升级的同时对升级后的防火墙执行自动化测试,验证了经过升级后的防火墙可继续提供正确的服务。值得注意的是,升级操作和升级后功能验证均为防火墙测试过程中不可忽略的关键点。本发明代替人工执行,解决了防火墙升级测试依赖人工且效率低的问题,且通过程序可重复地、不间断执行升级测试,其测试结果具有唯一和客观性,避免人工测试的主观性因素造成验证工作出现纰漏。
15、(2)本发明针对防火墙软件版本迭代更新周期短、不同的防火墙产品的升级流程存在共性的特点,提出了一种存在多个可升级版本时连续多次升级的路径树生成方法,该方法具有普遍适用性,适用于多数厂商的不同型号的防火墙产品。
1.一种防火墙升级自动化测试方法,其特征在于,包括:
2.根据权利要求1所述的防火墙升级自动化测试方法,其特征在于,所述生成升级路径树包括:
3.根据权利要求2所述的防火墙升级自动化测试方法,其特征在于,所述根据当前所处预设模式,生成升级路径树之后,还包括以下步骤:
4.根据权利要求1所述的防火墙升级自动化测试方法,其特征在于,所述对目标防火墙进行升级包括:
5.根据权利要求1所述的防火墙升级自动化测试方法,其特征在于,所述对目标防火墙进行升级的过程中,还包括:对目标防火墙升级状态进行监测,判断目标防火墙升级是否完成。
6.根据权利要求5所述的防火墙升级自动化测试方法,其特征在于,所述对目标防火墙升级状态进行监测,判断目标防火墙升级是否完成包括:
7.一种防火墙升级自动化测试系统,其特征在于,包括:
8.根据权利要求7所述的防火墙升级自动化测试系统,其特征在于,防火墙升级自动化测试系统还包括监测模块,所述检测模块被配置为进行与目标防火墙之间的网络通信,实时获取目标防火墙的系统状态;所述控制模块还被配置为实时判断流程的进度和状态,对相关子模块下发指令,直到任务结束后退出程序。
9.一种防火墙升级自动化测试装置,其特征在于,包括:
10.一种计算机存储介质,其特征在于,其上存储有计算机程序,计算机程序被处理器进行加载,以执行权利要求1至6任一项所述的防火墙升级自动化测试方法。