CN114553750B - 基于网络配置协议的自动化测试方法及装置 - Google Patents
基于网络配置协议的自动化测试方法及装置 Download PDFInfo
- Publication number
- CN114553750B CN114553750B CN202210173587.0A CN202210173587A CN114553750B CN 114553750 B CN114553750 B CN 114553750B CN 202210173587 A CN202210173587 A CN 202210173587A CN 114553750 B CN114553750 B CN 114553750B
- Authority
- CN
- China
- Prior art keywords
- configuration
- command
- tested
- network configuration
- commands
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0213—Standardised network management protocols, e.g. simple network management protocol [SNMP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/18—Protocol analysers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开涉及一种基于网络配置协议的自动化测试方法、装置、电子设备及计算机可读介质。该方法包括:获取待进行测试的访问控制列表表项;按照预设规则基于所述访问控制列表表项生成基于网络配置协议的配置命令组;和待测试设备建立网络配置协议连接;基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试。本申请涉及的基于网络配置协议的自动化测试方法、装置、电子设备及计算机可读介质,能够代替测试人员自动编写网络配置协议测试文件,还能够重复性的查配置对照下发验证,大大提高工作效率。
Description
技术领域
本公开涉及及计算机信息处理领域,具体而言,涉及一种基于网络配置协议的自动化测试方法、装置、电子设备及计算机可读介质。
背景技术
传统的网络管理协议SNMP并不是面向配置的协议,随着网络规模的增大、复杂性的增加,SNMP已经不能适应当前复杂网络的管理,特别是不能满足配置管理的需求。为了弥补SNMP的缺陷,基于可扩展标记语言XML(Extensible Markup Language)的NETCONF协议应运而生。
NETCONF提供了一种网管和网络设备之间通信的机制,网络管理员可以利用这套机制在网管上增加、修改、删除网络设备的配置,获取网络设备的配置和状态信息。
使用XML的netconf协议优点在于不关心下发的设备具体配置命令是什么,具体设备是什么,再多种设备复杂的使用环境中,降低了网络管理员的学习成本。但是在厂商测试功能的过程中,每一条命令都需要写一个xml文件,十分耗时。
因此,需要一种新的基于网络配置协议的自动化测试方法、装置、电子设备及计算机可读介质。
在所述背景技术部分公开的上述信息仅用于加强对本申请的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
有鉴于此,本申请提供一种基于网络配置协议的自动化测试方法、装置、电子设备及计算机可读介质,能够代替测试人员自动编写网络配置协议测试文件,还能够重复性的查配置对照下发验证,大大提高工作效率。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请的一方面,提出一种基于网络配置协议的自动化测试方法,该方法包括:获取待进行测试的访问控制列表表项;按照预设规则基于所述访问控制列表表项生成基于网络配置协议的配置命令组;和待测试设备建立网络配置协议连接;基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试。
在本申请的一种示例性实施例中,还包括:通过IPv4规则组数据、IPv6规则组数据、MAC规则组数据、VLAN规则组数据、动作组数据、策略组数据、分流策略组数据生成所述访问控制列表表项。
在本申请的一种示例性实施例中,按照预设规则基于所述访问控制列表表项生成基于网络配置协议的配置命令组,包括:逐行读取所述访问控制列表表项;将所述访问控制列表表项中每行首个元素作为特征索引;基于所述特征索引读取数据并填入基于网络配置协议生成的可扩展标记语言命令模板的预设位置以生成所述配置命令组。
在本申请的一种示例性实施例中,按照预设规则基于所述访问控制列表表项生成基于网络配置协议的配置命令组,包括:按照预设规则基于所述访问控制列表表项生成基于网络配置协议的下发配置命令;按照预设规则基于所述访问控制列表表项生成基于网络配置协议的获取配置命令;按照预设规则基于所述访问控制列表表项生成基于网络配置协议的删除配置命令;根据所述下发配置命令,所述获取配置命令,所述删除配置命令生成所述配置命令组。
在本申请的一种示例性实施例中,和待测试设备建立网络配置协议连接,包括:和待测试设备建立NETCONF over SSH连接。
在本申请的一种示例性实施例中,基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试,包括:基于网络配置协议连接将所述配置命令组中的下发配置命令、获取配置命令、删除配置命令逐一发送到待测试设备以进行自动化测试。
在本申请的一种示例性实施例中,基于网络配置协议连接将所述配置命令组中的下发配置命令、获取配置命令、删除配置命令逐一发送到待测试设备以进行自动化测试,包括:基于网络配置协议连接将所述配置命令组中的下发配置命令发送到待测试设备;根据返回值确定下发配置命令是否正确下发;在下发配置命令正确时,基于网络配置协议连接将所述配置命令组中的获取配置命令发送到待测试设备。
在本申请的一种示例性实施例中,基于网络配置协议连接将所述配置命令组中的下发配置命令、获取配置命令、删除配置命令逐一发送到待测试设备以进行自动化测试,还包括:将所述配置命令组中的获取配置命令发送到待测试设备之后,获取待测试设备上键入的命令数据;将获取配置命令和命令数据一致时,确定获取配置命令下发正确;在获取配置命令正确时,基于网络配置协议连接将所述配置命令组中的删除配置命令发送到待测试设备。
在本申请的一种示例性实施例中,基于网络配置协议连接将所述配置命令组中的下发配置命令、获取配置命令、删除配置命令逐一发送到待测试设备以进行自动化测试,还包括:将所述配置命令组中的删除配置命令发送到待测试设备之后,通过简单网络管理协议协议确定删除配置命令是否下发正确。
根据本申请的一方面,提出一种基于网络配置协议的自动化测试装置,该装置包括:表项模块,用于获取待进行测试的访问控制列表表项;生成模块,用于按照预设规则基于所述访问控制列表表项生成基于网络配置协议的配置命令组;连接模块,用于和待测试设备建立网络配置协议连接;测试模块,用于基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试。
根据本申请的一方面,提出一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上文的方法。
根据本申请的一方面,提出一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上文中的方法。
根据本申请的基于网络配置协议的自动化测试方法、装置、电子设备及计算机可读介质,通过获取待进行测试的访问控制列表表项;按照预设规则基于所述访问控制列表表项生成基于网络配置协议的配置命令组;和待测试设备建立网络配置协议连接;基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试的方式,能够代替测试人员自动编写网络配置协议测试文件,还能够重复性的查配置对照下发验证,大大提高工作效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
通过参照附图详细描述其示例实施例,本申请的上述和其它目标、特征及优点将变得更加显而易见。下面描述的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种基于网络配置协议的自动化测试方法及装置的***框图。
图2是根据一示例性实施例示出的一种基于网络配置协议的自动化测试方法的流程图。
图3是根据另一示例性实施例示出的一种基于网络配置协议的自动化测试方法的流程图。
图4是根据另一示例性实施例示出的一种基于网络配置协议的自动化测试方法的流程图。
图5是根据一示例性实施例示出的一种基于网络配置协议的自动化测试装置的框图。
图6是根据一示例性实施例示出的一种电子设备的框图。
图7是根据一示例性实施例示出的一种计算机可读介质的框图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本申请将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本申请概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本申请所必须的,因此不能用于限制本申请的保护范围。
本申请涉及的技术缩略语解释如下:
NETCONF:Network Configuration Protocol网络配置协议,是一种基于XML的网络管理协议,他提供了一种可编程的、对网络设备进行配置和管理的方法。用户可以通过该协议设置参数、获取参数值、获取统计信息等。这使得他在第三方软件的开发上非常便利,很容易开发出在混合不同厂商、不同设备的环境下的特殊定制的网管软件
ACL:Access Control List访问控制列表,即通过配置对报文的匹配条件和处理动作而实现报文过滤和控制的功能。当网络设备的物理接口接收到报文,或将从物理接口发送出去之前,根据当前接口上配置的ACL表项对报文内容进行解析和匹配,对匹配到的报文进行相应动作处理。
命令:命令是“关键字”与“参数”按照一定顺序组合后形成的一行字符串表达式。关键字又可以称为普通关键字是指固定不变的单词,用于表示后续参数的具体含义。参数指可变的配置参数。例如:no ip address 192.168.0.1/16,其中no、ip、address均为关键字,192.168.0.1/16为参数。
本案申请人发现,现有技术中配置精确访问控制列表可分为如下四个步骤:
1.配置ACL规则组,根据规则组ID区分ACL类型,其中IPv4ACL规则组ID取值范围可为3000-3999;IPv6ACL规则组ID取值范围可为3000-3999,在ID前面要加IPv6关键词;MACACL规则组ID取值范围可为4000-4999;VLANACL规则组ID取值范围可为5000-5999。
2.配置ACL动作组,包括通过,阻断,重定向,计数,更改添加VLAN头,更改报文优先级等。
3.配置ACL策略组,将相应的ACL规则组与动作组都添加到此ACL策略组。
4.将ACL应用到入接口上进行流量定向分流。
现有的测试方法是每一条命令对应写一个xml文件,测试一条完整的ACL需要写四个下发的,四个获取,四个删除的xml文件,相当耗时耗力。遍历测试各种ACL规则组类型,动作类型,接口类型需要消耗成倍时间成本。
为了解决现有技术中的技术瓶颈,本申请利用ACL配置与xml中关键字的一一对应关系,将繁复的工作用自动化的方式,代替测试人员手工编写xml文件,重复性的查配置对照下发验证。大大提高工作效率。下面借助于具体的实施例进行详细说明。
图1是根据一示例性实施例示出的一种基于网络配置协议的自动化测试方法、装置的***框图。
如图1所示,***架构10可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103进行配置测试的后台管理服务器。后台管理服务器可以对终端设备101、102、103进行自动化的配置和测试,还可将处理结果反馈给管理员。
服务器105可例如获取待进行测试的访问控制列表表项;服务器105可例如按照预设规则基于所述访问控制列表表项生成基于网络配置协议的配置命令组;服务器105可例如和终端设备101、102、103建立网络配置协议连接;服务器105可例如基于网络配置协议连接将所述配置命令组中的命令发送到终端设备101、102、103中以进行自动化测试。
服务器105还可例如通过IPv4规则组数据、IPv6规则组数据、MAC规则组数据、VLAN规则组数据、动作组数据、策略组数据、分流策略组数据生成所述访问控制列表表项。
服务器105可以是一个实体的服务器,还可例如为多个服务器组成,需要说明的是,本申请实施例所提供的基于网络配置协议的自动化测试方法可以由服务器105执行,相应地,基于网络配置协议的自动化测试装置可以设置于服务器105中。
图2是根据一示例性实施例示出的一种基于网络配置协议的自动化测试方法的流程图。基于网络配置协议的自动化测试方法20至少包括步骤S202至S208。
如图2所示,在S202中,获取待进行测试的访问控制列表表项。
在一个实施例中,还包括:通过IPv4规则组数据、IPv6规则组数据、MAC规则组数据、VLAN规则组数据、动作组数据、策略组数据、分流策略组数据生成所述访问控制列表表项。
在S204中,按照预设规则基于所述访问控制列表表项生成基于网络配置协议的配置命令组。可例如,逐行读取所述访问控制列表表项;将所述访问控制列表表项中每行首个元素作为特征索引;基于所述特征索引读取数据并填入基于网络配置协议生成的可扩展标记语言命令模板的预设位置以生成所述配置命令组。
在一个实施例中,可按照预设规则基于所述访问控制列表表项生成基于网络配置协议的下发配置命令(merge xml);按照预设规则基于所述访问控制列表表项生成基于网络配置协议的获取配置命令(get xml);按照预设规则基于所述访问控制列表表项生成基于网络配置协议的删除配置命令(del xml);根据所述下发配置命令,所述获取配置命令,所述删除配置命令生成所述配置命令组。
在一个具体的实施例中,可通过读取准备好的ACL规则列表生成xml,列表每行第一个元素为特征索引。IPv4为IPv4ACL规则组;IPv6为IPv6ACL规则组;MAC为MACACL规则组;VLAN为VLANACL规则组;action为ACL动作组;policy为ACL策略组;interface为将ACL应用在接口上分流的策略。
在读取列表后,对应于每一行列表均生成merge下发、get获取、del删除三个xml文件。
例:列表第一行为:
IPv4ACL 3001 rule 1 ip source1.1.1.1 255.255.255.255destination2.2.2.2 255.255.255.255
对应生成的merge xml为:
<edit-config xmlns:nc="urn:ietf:params:xml:ns:netconf:
base:1.0"
xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
……
<ip>1.1.1.1</ip>
<mask>255.255.255.255</mask>
</sip>
<dip>
<ip>2.22.2.2</ip>
<mask>255.255.255.255</mask>
……
对应生成的get xml为:
对应生成的del xml为:
<edit-config xmlns="urn:ietf:params:xml:ns:netconf:
base:1.0">
<target>
<running/>
</target>
<config>
<exact-ACL xmlns="http://equip-g.com/exact-v4-ACL">
<exact-ACL operation="delete">
<ACL-id>3001</ACL-id>
……。
在S206中,和待测试设备建立网络配置协议连接。更具体的,可和待测试设备建立NETCONF over SSH连接。
在S208中,基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试。基于网络配置协议连接将所述配置命令组中的下发配置命令、获取配置命令、删除配置命令逐一发送到待测试设备以进行自动化测试。
在一个实施例中,可基于网络配置协议连接将所述配置命令组中的下发配置命令发送到待测试设备;根据返回值确定下发配置命令是否正确下发;在下发配置命令正确时,基于网络配置协议连接将所述配置命令组中的获取配置命令发送到待测试设备。
还可将所述配置命令组中的获取配置命令发送到待测试设备之后,获取待测试设备上键入的命令数据;将获取配置命令和命令数据一致时,确定获取配置命令下发正确;在获取配置命令正确时,基于网络配置协议连接将所述配置命令组中的删除配置命令发送到待测试设备。
还可将所述配置命令组中的删除配置命令发送到待测试设备之后,通过简单网络管理协议协议确定删除配置命令是否下发正确。
根据本申请的基于网络配置协议的自动化测试方法,通过获取待进行测试的访问控制列表表项;按照预设规则基于所述访问控制列表表项生成基于网络配置协议的配置命令组;和待测试设备建立网络配置协议连接;基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试的方式,能够代替测试人员自动编写网络配置协议测试文件,还能够重复性的查配置对照下发验证,大大提高工作效率。
应清楚地理解,本申请描述了如何形成和使用特定示例,但本申请的原理不限于这些示例的任何细节。相反,基于本申请公开的内容的教导,这些原理能够应用于许多其它实施例。
图3是根据另一示例性实施例示出的一种基于网络配置协议的自动化测试方法的流程图。图3所示的流程30是对图2所示的流程中S206“和待测试设备建立网络配置协议连接”的详细描述。
如图3所示,在S302中,建立网络配置协议连接。
在S304中,连接是否成功。
在S306中,下发命令数据。
在S308中,返回连接失败信息。
在S310中,下发是否成功。
在S312中,保存返回数据。
在S314中,返回下发失败数据。
在S316中,结束。
被测设备开启SSH协议,建立NETCONF over SSH连接,连接建立成功才会下发xml配置,否则返回连接建立不成功,在连接建立起来后,将生成的xml命令向被测设备下发,根据返回值判断是否下发成功,保存返回数据。
图4是根据另一示例性实施例示出的一种基于网络配置协议的自动化测试方法的流程图。图4所示的流程40是对图2所示的流程中S208“基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试”的详细描述。
如图4所示,在S402中,输入访问控制列表表项。
在S404中,生成下发配置命令、获取配置命令、删除配置命令。
在S406中,下发配置命令发送到被测设备。通过NETCONF连接设备下发merge xml,下发ACL配置到设备。通过snmp协议查找设备ACL配置下发是否正确。
在S408中,下发配置命令下发是否正确。
在S410中,获取配置命令发送到被测设备。通过NETCONF连接设备下发get xml,根据返回数据判断是否下发成功,若成功下发会获取设备返回的配置参数。对比获取到的参数与关联的merge xml里参数是否一致。
在S412中,获取配置命令下发是否正确。
在S414中,删除配置命令发送到被测设备。设通过NETCONF连接设备下发del xml,根据返回值判断是否下发成功。通过snmp协议查找设备ACL配置是否存在判断del xml下发后是否生效。
在S416中,删除配置命令下发是否正确。
在S418中,通过测试。
在S420中,返回错误信息,未通过测试。
在一个具体的实施例中,可通过五个模块实现申请中的技术方案:生成xml模块;通过NETCONF连接设备下发xml模块;Netconf下发ACL配置模块;Netconf获取ACL配置并对比模块;Netconf删除ACL配置模块。
键入ACL规则列表,按照列表每行第一个元素为特征调用生成xml模块生成xml,每一行生成的三个xml文件索引储存为一个数组结构。
Netconf下发ACL配置模块将生成xml模块生成的merge xml调用通过NETCONF连接设备下发xml模块下发ACL配置到设备。通过返回值判断连接是否建立,xml下发是否成功,失败则返回失败类型,连接建立失败或merge xml下发失败,测试结果不通过,结束程序。成功则通过snmp协议判断下发的ACL配置是否与ACL规则列表中的一致,不一致则返回merge下发ACL失败测试结果不通过,结束程序,一致则进行第三步。
Netconf获取ACL配置并对比模块将生成xml模块生成的get xml调用通过NETCONF连接设备下发xml模块下发ACL配置到设备。通过返回值判断连接是否建立,xml下发是否成功,失败则返回失败类型,连接建立失败或get xml下发失败,测试结果不通过结束程序。若成功,将通过get xml获取到的关键字与ACL规则列表中关键字进行匹配,若匹配失败则返回get xml获取失败,测试结果不通过结束程序,成功则进行第四步。
Netconf删除ACL配置模块将生成xml模块生成的del xml调用通过NETCONF连接设备下发xml模块下发ACL配置到设备。通过返回值判断连接是否建立,xml下发是否成功,失败则返回失败类型,连接建立失败或del xml下发失败,测试结果不通过结束程序。成功则通过snmp协议判断相应ACL配置是否删除,否返回del xml删除失败,是则返回测试结果通过,结束程序。
本领域技术人员可以理解实现上述实施例的全部或部分步骤被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本申请提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
此外,需要注意的是,上述附图仅是根据本申请示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
图5是根据一示例性实施例示出的一种基于网络配置协议的自动化测试装置的框图。如图5所示,基于网络配置协议的自动化测试装置50包括:表项模块502,生成模块504,连接模块506,测试模块508。
表项模块502用于获取待进行测试的访问控制列表表项;
生成模块504用于按照预设规则基于所述访问控制列表表项生成基于网络配置协议的配置命令组;生成模块504还用于逐行读取所述访问控制列表表项;将所述访问控制列表表项中每行首个元素作为特征索引;基于所述特征索引读取数据并填入基于网络配置协议生成的可扩展标记语言命令模板的预设位置以生成所述配置命令组。
连接模块506用于和待测试设备建立网络配置协议连接;连接模块506还用于和待测试设备建立NETCONF over SSH连接。
测试模块508用于基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试。测试模块508还用于基于网络配置协议连接将所述配置命令组中的下发配置命令、获取配置命令、删除配置命令逐一发送到待测试设备以进行自动化测试。
根据本申请的基于网络配置协议的自动化测试装置,通过获取待进行测试的访问控制列表表项;按照预设规则基于所述访问控制列表表项生成基于网络配置协议的配置命令组;和待测试设备建立网络配置协议连接;基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试的方式,能够代替测试人员自动编写网络配置协议测试文件,还能够重复性的查配置对照下发验证,大大提高工作效率。
图6是根据一示例性实施例示出的一种电子设备的框图。
下面参照图6来描述根据本申请的这种实施方式的电子设备600。图6显示的电子设备600仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同***组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书中描述的根据本申请各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图2,图3,图4中所示的步骤。
所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
所述存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、***总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备600’(例如键盘、指向设备、蓝牙设备等)通信,使得用户能与该电子设备600交互的设备通信,和/或该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
总体而言,本公开就是为了使得测试过程简单化,解决编写xml文件和下发验证过程大量耗时的问题,自动化返回测试结果。为此,生成xml,get xml为获取设备配置,mergexml为下发配置,del xml为删除配置的xml文件。通过读取准备好的acl规则列表生成xml,列表每行第一个元素为特征索引。Ipv4为ipv4 acl规则组;Ipv6为ipv6 acl规则组;mac为mac acl规则组;vlan为vlan acl规则组;action为acl动作组;policy为acl策略组;interface为将acl应用在接口上分流的策略。在读取列表后,每一行列表生成merge下发、get获取、del删除三个xml文件。通过NETCONF连接设备下发xml。设备开启SSH协议,建立NETCONF over SSH连接,连接建立成功才会下发xml配置,否则返回连接建立不成功,在连接建立起来后,将生成的xml向设备下发,根据返回值判断是否下发成功,保存返回数据。Netconf下发acl配置。通过NETCONF连接设备下发merge xml,将模块一生成的merge xml调用模块二下发acl配置到设备。通过snmp协议查找设备acl配置下发是否正确。Netconf获取acl配置。通过NETCONF连接设备下发get xml,将模块一生成的get xml调用模块二向设备下发,根据返回数据判断是否下发成功,若成功下发会获取设备返回的配置参数。对比获取到的参数与关联的merge xml里参数是否一致。Netconf删除acl配置。设通过NETCONF连接设备下发get xml,将模块一生成的del xml调用模块二向设备下发,根据返回值判断是否下发成功。通过snmp协议查找设备acl配置是否存在判断del xml下发后是否生效。
整个自动化测试过程包括:第一步,键入acl规则列表,按照列表每行第一个元素为特征调用模块一生成xml,每一行生成的三个xml文件索引储存为一个数组结构。第二步,模块三将模块一生成的merge xml调用模块二下发acl配置到设备。通过返回值判断连接是否建立,xml下发是否成功,失败则返回失败类型,连接建立失败或merge xml下发失败,测试结果不通过,结束程序。成功则通过snmp协议判断下发的acl配置是否与acl规则列表中的一致,不一致则返回merge下发acl失败测试结果不通过,结束程序,一致则进行第三步。第三步,模块四将模块一生成的get xml调用模块二下发acl配置到设备。通过返回值判断连接是否建立,xml下发是否成功,失败则返回失败类型,连接建立失败或get xml下发失败,测试结果不通过结束程序。若成功,将通过get xml获取到的关键字与acl规则列表中关键字进行匹配,若匹配失败则返回get xml获取失败,测试结果不通过结束程序,成功则进行第四步。第四步,模块五将模块一生成的del xml调用模块二下发acl配置到设备。通过返回值判断连接是否建立,xml下发是否成功,失败则返回失败类型,连接建立失败或del xml下发失败,测试结果不通过结束程序。成功则通过snmp协议判断相应acl配置是否删除,否返回del xml删除失败,是则返回测试结果通过,结束程序。
本公开利用acl配置与xml中关键字的一一对应关系,将繁复的工作用自动化的方式,代替测试人员手工编写xml文件,重复性的查配置对照下发验证。大大提高工作效率。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,如图7所示,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本申请实施方式的上述方法。
所述软件产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现如下功能:获取待进行测试的访问控制列表表项;按照预设规则基于所述访问控制列表表项生成基于网络配置协议的配置命令组;和待测试设备建立网络配置协议连接;基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试。
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本申请实施例的方法。
以上具体地示出和描述了本申请的示例性实施例。应可理解的是,本申请不限于这里描述的详细结构、设置方式或实现方法;相反,本申请意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
Claims (8)
1.一种基于网络配置协议的自动化测试方法,其特征在于,包括:
获取待进行测试的访问控制列表表项;
逐行读取所述访问控制列表表项,将所述访问控制列表表项中每行首个元素作为特征索引,基于所述特征索引读取数据并填入基于网络配置协议生成的可扩展标记语言命令模板的预设位置以生成包括下发配置命令、获取配置命令以及删除配置命令的配置命令组;
和待测试设备建立网络配置协议连接;
基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试。
2.如权利要求1所述的方法,其特征在于,还包括:
通过IPv4规则组数据、IPv6规则组数据、MAC规则组数据、VLAN规则组数据、动作组数据、策略组数据、分流策略组数据生成所述访问控制列表表项。
3.如权利要求1所述的方法,其特征在于,和待测试设备建立网络配置协议连接,包括:
和待测试设备建立NETCONF over SSH连接。
4.如权利要求1所述的方法,其特征在于,基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试,包括:
基于网络配置协议连接将所述配置命令组中的下发配置命令、获取配置命令、删除配置命令逐一发送到待测试设备以进行自动化测试。
5.如权利要求4所述的方法,其特征在于,基于网络配置协议连接将所述配置命令组中的下发配置命令、获取配置命令、删除配置命令逐一发送到待测试设备以进行自动化测试,包括:
基于网络配置协议连接将所述配置命令组中的下发配置命令发送到待测试设备;
根据返回值确定下发配置命令是否正确下发;
在下发配置命令正确时,基于网络配置协议连接将所述配置命令组中的获取配置命令发送到待测试设备。
6.如权利要求5所述的方法,其特征在于,基于网络配置协议连接将所述配置命令组中的下发配置命令、获取配置命令、删除配置命令逐一发送到待测试设备以进行自动化测试,还包括:
将所述配置命令组中的获取配置命令发送到待测试设备之后,获取待测试设备上键入的命令数据;
在获取配置命令和命令数据一致时,确定获取配置命令下发正确;
在获取配置命令正确时,基于网络配置协议连接将所述配置命令组中的删除配置命令发送到待测试设备。
7.如权利要求6所述的方法,其特征在于,基于网络配置协议连接将所述配置命令组中的下发配置命令、获取配置命令、删除配置命令逐一发送到待测试设备以进行自动化测试,还包括:
将所述配置命令组中的删除配置命令发送到待测试设备之后,通过简单网络管理协议确定删除配置命令是否下发正确。
8.一种基于网络配置协议的自动化测试装置,其特征在于,包括:
表项模块,用于获取待进行测试的访问控制列表表项;
生成模块,用于逐行读取所述访问控制列表表项,将所述访问控制列表表项中每行首个元素作为特征索引,基于所述特征索引读取数据并填入基于网络配置协议生成的可扩展标记语言命令模板的预设位置以生成包括下发配置命令、获取配置命令以及删除配置命令的配置命令组;
连接模块,用于和待测试设备建立网络配置协议连接;
测试模块,用于基于网络配置协议连接将所述配置命令组中的命令发送到待测试设备中以进行自动化测试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210173587.0A CN114553750B (zh) | 2022-02-24 | 2022-02-24 | 基于网络配置协议的自动化测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210173587.0A CN114553750B (zh) | 2022-02-24 | 2022-02-24 | 基于网络配置协议的自动化测试方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114553750A CN114553750A (zh) | 2022-05-27 |
CN114553750B true CN114553750B (zh) | 2023-09-22 |
Family
ID=81677658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210173587.0A Active CN114553750B (zh) | 2022-02-24 | 2022-02-24 | 基于网络配置协议的自动化测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114553750B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102377610A (zh) * | 2010-08-17 | 2012-03-14 | 盛科网络(苏州)有限公司 | 简单网络管理协议自动化测试***及其方法 |
CN103004135A (zh) * | 2011-07-25 | 2013-03-27 | 华为技术有限公司 | 访问控制方法及访问控制服务器 |
CN103249069A (zh) * | 2012-02-14 | 2013-08-14 | 展讯通信(上海)有限公司 | 移动终端的测试方法及测试设备、移动终端的测试*** |
CN103812726A (zh) * | 2014-01-26 | 2014-05-21 | 烽火通信科技股份有限公司 | 一种数据通信设备的自动化测试方法及装置 |
CN104899150A (zh) * | 2015-06-30 | 2015-09-09 | 上海斐讯数据通信技术有限公司 | 基于面向对象的自动化测试方法及***、和自动化平台 |
WO2015131717A1 (zh) * | 2014-10-09 | 2015-09-11 | 中兴通讯股份有限公司 | 一种网络设备的访问控制列表管理方法和装置 |
CN109104337A (zh) * | 2018-11-01 | 2018-12-28 | 郑州云海信息技术有限公司 | 一种测试网络访问控制工具的方法、装置及设备 |
CN109743231A (zh) * | 2019-02-22 | 2019-05-10 | 杭州迪普科技股份有限公司 | 一种acl功能测试方法和装置 |
CN110311826A (zh) * | 2019-08-08 | 2019-10-08 | 迈普通信技术股份有限公司 | 网络设备配置方法及装置 |
CN110971438A (zh) * | 2018-09-30 | 2020-04-07 | 华为技术有限公司 | 配置数据的方法及装置 |
CN111010305A (zh) * | 2019-12-23 | 2020-04-14 | 烽火通信科技股份有限公司 | 一种基于netconf协议的配置管理***及方法 |
CN112597343A (zh) * | 2020-12-21 | 2021-04-02 | 安徽皖通邮电股份有限公司 | 一种netconf自动化生成配置的方法 |
CN113391967A (zh) * | 2021-06-16 | 2021-09-14 | 杭州迪普科技股份有限公司 | 防火墙的包过滤测试方法及装置 |
CN113708955A (zh) * | 2021-07-29 | 2021-11-26 | 杭州迪普科技股份有限公司 | 设备配置方法、装置及*** |
CN114048080A (zh) * | 2021-11-18 | 2022-02-15 | 北京天融信网络安全技术有限公司 | 一种光矩阵设备调度***、方法、电子设备及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030105989A1 (en) * | 2001-12-04 | 2003-06-05 | Saunders Jimmy D. | Test system and method |
US7627569B2 (en) * | 2005-06-30 | 2009-12-01 | Google Inc. | Document access control |
US8458695B2 (en) * | 2006-10-17 | 2013-06-04 | Manageiq, Inc. | Automatic optimization for virtual systems |
US8782182B2 (en) * | 2007-05-24 | 2014-07-15 | Foundry Networks, Llc | Generating device-specific configurations |
CN104113443B (zh) * | 2013-04-19 | 2018-10-02 | 南京中兴新软件有限责任公司 | 一种网络设备检测方法、装置及云检测*** |
-
2022
- 2022-02-24 CN CN202210173587.0A patent/CN114553750B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102377610A (zh) * | 2010-08-17 | 2012-03-14 | 盛科网络(苏州)有限公司 | 简单网络管理协议自动化测试***及其方法 |
CN103004135A (zh) * | 2011-07-25 | 2013-03-27 | 华为技术有限公司 | 访问控制方法及访问控制服务器 |
CN103249069A (zh) * | 2012-02-14 | 2013-08-14 | 展讯通信(上海)有限公司 | 移动终端的测试方法及测试设备、移动终端的测试*** |
CN103812726A (zh) * | 2014-01-26 | 2014-05-21 | 烽火通信科技股份有限公司 | 一种数据通信设备的自动化测试方法及装置 |
WO2015131717A1 (zh) * | 2014-10-09 | 2015-09-11 | 中兴通讯股份有限公司 | 一种网络设备的访问控制列表管理方法和装置 |
CN105577399A (zh) * | 2014-10-09 | 2016-05-11 | 中兴通讯股份有限公司 | 一种网络设备的访问控制列表管理方法和装置 |
CN104899150A (zh) * | 2015-06-30 | 2015-09-09 | 上海斐讯数据通信技术有限公司 | 基于面向对象的自动化测试方法及***、和自动化平台 |
CN110971438A (zh) * | 2018-09-30 | 2020-04-07 | 华为技术有限公司 | 配置数据的方法及装置 |
CN109104337A (zh) * | 2018-11-01 | 2018-12-28 | 郑州云海信息技术有限公司 | 一种测试网络访问控制工具的方法、装置及设备 |
CN109743231A (zh) * | 2019-02-22 | 2019-05-10 | 杭州迪普科技股份有限公司 | 一种acl功能测试方法和装置 |
CN110311826A (zh) * | 2019-08-08 | 2019-10-08 | 迈普通信技术股份有限公司 | 网络设备配置方法及装置 |
CN111010305A (zh) * | 2019-12-23 | 2020-04-14 | 烽火通信科技股份有限公司 | 一种基于netconf协议的配置管理***及方法 |
CN112597343A (zh) * | 2020-12-21 | 2021-04-02 | 安徽皖通邮电股份有限公司 | 一种netconf自动化生成配置的方法 |
CN113391967A (zh) * | 2021-06-16 | 2021-09-14 | 杭州迪普科技股份有限公司 | 防火墙的包过滤测试方法及装置 |
CN113708955A (zh) * | 2021-07-29 | 2021-11-26 | 杭州迪普科技股份有限公司 | 设备配置方法、装置及*** |
CN114048080A (zh) * | 2021-11-18 | 2022-02-15 | 北京天融信网络安全技术有限公司 | 一种光矩阵设备调度***、方法、电子设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
"Quality of Service Assesment Using Machine Learning Techniques for the NETCONF Protocol";Javier A. Ouret et.al.;2018 Congreso Argentino de Ciencias de la Informática y Desarrollos de Investigación (CACIDI);全文 * |
基于综合通信导航识别设备的自动测试***的设计与实现;雷婉琦;中国优秀硕士学位论文全文数据库 (信息科技辑);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114553750A (zh) | 2022-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11546331B2 (en) | Credential and authentication management in scalable data networks | |
US11847167B2 (en) | System and method for generation of chat bot system with integration elements augmenting natural language processing and native business rules | |
US11936652B2 (en) | Proxied multi-factor authentication using credential and authentication management in scalable data networks | |
CN110442524B (zh) | 一种针对带有认证授权的web服务接口测试方法和装置 | |
CN108574604B (zh) | 测试方法和装置 | |
US8312127B2 (en) | Discovering, defining, and implementing computer application topologies | |
US11522851B2 (en) | Secured rest execution inside headless web application | |
US20070156860A1 (en) | Implementing computer application topologies on virtual machines | |
US20200213262A1 (en) | System and method for automating actions in distributed computing | |
CN111104675A (zh) | ***安全漏洞的检测方法和装置 | |
CN110011875B (zh) | 拨测方法、装置、设备及计算机可读存储介质 | |
CN110162994A (zh) | 权限控制方法、***、电子设备及计算机可读存储介质 | |
US11843674B2 (en) | Virtual workspace experience visualization and optimization | |
CN107193681A (zh) | 数据校验方法及装置 | |
WO2020211360A1 (zh) | Mock测试方法、***、电子设备及计算机非易失性可读存储介质 | |
KR20210138095A (ko) | 클라우드 컴퓨팅 환경에서 가상 에이전트를 위한 시스템들 및 방법들 | |
CN113141405A (zh) | 服务访问方法、中间件***、电子设备和存储介质 | |
CN114553750B (zh) | 基于网络配置协议的自动化测试方法及装置 | |
WO2023169193A1 (zh) | 用于生成智能合约的方法和装置 | |
CN114449040B (zh) | 基于云平台的配置下发方法及装置 | |
CN109286692A (zh) | 一种配置服务器ipmi静态ip地址的方法 | |
CN113726855B (zh) | 服务聚合方法、装置、电子设备以及计算机可读存储介质 | |
US20220345517A1 (en) | Unified application management for heterogeneous application delivery | |
CN112559233B (zh) | 识别故障类型的方法、装置、设备和计算机可读介质 | |
US20100023872A1 (en) | Web page serving architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |