Snmp接口信息模型一致性自动化测试方法及系统的制作方法

文档序号:6603490阅读:304来源:国知局
专利名称:Snmp接口信息模型一致性自动化测试方法及系统的制作方法
技术领域
本发明涉及软件测试领域,尤其涉及一种SNMP接口信息模型一致性自动化测试 方法及系统。
背景技术
通信行业标准YD/T 1145-2001《网络管理接口测试方法》中提及“网络管理接口包 括协议栈、信息模型和接口功能,相应地,对网络管理接口的测试包括三个方面的内容通 信协议一致性测试、信息模型一致性测试和管理功能一致性测试。”其中,对网络管理(网 管)接口的通信协议一致性测试的主要目的是检验利用网管接口进行通信的通信实体之 间的互联性和互通性;信息模型一致性测试用于验证被测网管接口是否能以正确的形式提 供网络管理信息,属于语法测试的范畴;管理功能一致性测试用于验证网管接口所传递的 信息能否真正指配网络的运行以及正确表达网络资源的具体运行情况,属于语义测试的范SNMP (Simple Network Management Protocol,简单网络管理协议)接口 的信息 模型一致性测试是SNMP网管接口测试的重要组成部分,用于验证被测SNMP接口是否能以 正确的形式提供网络管理信息,测试对象覆盖SNMP接口信息模型中定义的所有表对象、叶 对象和通知对象(陷阱对象),测试内容包括对各类对象实例的访问权限测试、数据类型测 试、数据值范围测试以及表对象的索引关系测试等。在通信行业标准YD/T 1145-2001《网络管理接口测试方法》中,建议在网管接口 的ICS (Implementation Conformance Statement,实现一致性声明)文稿的基础上进行信 息模型一致性测试。SNMP接口的ICS文稿由三部分组成,一部分是通过分析管理信息模型 定义内容生成,该部分是根据规定的管理信息模型说明各管理对象应实现的标准,是测试 的主要依据;另一部分是管理对象的实现描述单元,由被测用户填写,说明被测系统中管理 对象的实际实现情况;最后一部分是表述测试结果的单元,由测试人员填写,以标识测试项 的实际测试结果。依据行业标准YD/T 1145-2001建议,SNMP接口的信息模型测试可分为测试准备、 测试执行和测试总结三个阶段。1)在测试准备阶段,测试人员需要根据测试项目所依据的相关规范中定义的信息 模型,生成ICS文稿,这是测试的基本依据。生成好的ICS文稿还需要交由被测用户根据被 测系统的实际实现情况填写管理对象实现描述单元,形成ICS规格说明,用于筛选因被测 系统未实现而不需要测试的内容,减少实际测试的工作量。最后,测试人员需要依据ICS规 格说明的描述,编写SNMP接口信息模型测试所需的相应测试用例。2)在测试执行阶段,测试人员需要执行编写好的测试用例,将被测系统中管理对 象在测试中表现出来的实际行为与ICS规格说明中的描述进行一致性比较,并将其结果记 录在ICS规格说明的测试结果单元中,形成正式的测试记录文件。3)在测试总结阶段,测试人员需要依据测试记录中各个管理对象的测试结果,编写测试报告。 在现有的与SNMP接口测试相关的专利申请中,主要都是提出了 SNMP接口管理功 能一致性测试的相关技术。例如,在中国专利申请“对设备进行基于管理信息库的测试的系 统和方法”(申请号为200510135502. 6)中,华为技术有限公司提出了一种通过编写Tcl脚 本执行事先设置的测试用例库中用例的测试方法,该方法需要人工编写Tcl脚本和事先设 置好测试用例库,自动化程度较低。在中国专利申请“对简单网络管理协议的代理实现自动化测试的方法及系统”(申 请号为200610170030. 2)中,华为技术有限公司提出了另一种自动化程度较高的测试方 法,该方法在对网络设备状态进行监控的同时,将执行基本测试用例从SNMP接口获取的被 测代理信息与执行比对用例从网络设备命令等其他途径获取的被测代理所在网络设备信 息进行自动对比,验证从SNMP接口所获得的代理信息是否正确表达了网络设备资源的具 体运行情况,为SNMP接口管理功能测试提供了一种很好的自动化测试手段。但该发明仍需 事先设置好基本测试用例数据和比对用例数据。在中国专利申请“简单网络管理协议软件的测试装置及其测试方法”(申请号 200710138053. X)中,中兴通信股份有限公司提出了一种集成SNMP测试工具(如SNMP Explore)和自动测试执行工具(如Rational Robot)进行SNMP接口自动测试的装置,其中 的基础数据集单元从网管系统或其他系统设置基础数据与数据模板,并转化为SNMP测试 工具识别的数据格式,SNMP测试工具的测试数据再由数据处理单元与数据模板比较得出测 试结果,自动测试驱动平台实现对上述部分的自动控制。在现有的SNMP接口测试技术中,应用于SNMP接口信息模型一致性测试的技术非 常少。除了通过分析SNMP接口信息模型定义的MIB(Management Information Base,管理 信息库)文件自动生成ICS文稿(请参见《基于SMIv2的ICS文稿及生成方法》,电子学报, 2003年第2期),SNMP接口信息模型一致性测试的其他工作基本都是人工完成的。被测用 户需要在生成的ICS文稿上手工填写被测系统的实现情况描述单元,形成ICS规格说明书。 测试人员需要依据ICS规格说明书手工编制SNMP接口信息模型测试用例,手动执行测试用 例和人工判定执行结果,并根据测试用例执行结果手工编写测试报告。以这样的方式进行 SNMP接口的信息模型一致性测试不但效率低下,而且容易受人为的因素影响最终测试结果 的准确性和公正性。由此看来,现有的SNMP接口测试技术存在以下缺陷(1)不适用于SNMP接口信息模型一致性测试。SNMP接口信息模型一致性测试侧重于验证被测SNMP接口传递的信息是否符合信 息模型定义的格式,属于语法测试的范畴。例如各对象实例的访问权限是否与信息模型定 义一致、对象实例数值的数据类型是否与信息模型定义一致、对象实例数值是否在信息模 型定义的取值范围内、表对象实例的索引关系是否与信息模型定义一致等等。而SNMP接口 功能一致性测试的技术则侧重于验证被测SNMP接口传递的信息是否能够真正指配网络的 运行以及正确表达网络资源的具体运行情况,属于语义测试的范畴。现有技术中,大多是应用于SNMP接口功能一致性测试的技术。这些技术侧重于实 现自动将SNMP接口获得的管理信息与网络设备的真实管理信息进行比对,但并未涉及对 接口信息模型中定义的各种语法现象进行覆盖性测试,无法满足SNMP接口信息模型一致性测试的需要。(2)测试效率低下。SNMP接口 信息模型测试中,测试对象覆盖SNMP接口信息模型中定义的所有表对 象、叶对象和通知对象(陷阱对象),测试内容包括对各类对象实例的访问权限测试、数据 类型测试、数据值范围测试以及表对象的索引关系测试等,需要测试的项目非常多。以通信行业标准YD/T 1147《接入网网络管理接口技术规范一 ADSL部分》中定义 的SNMP接口信息模型为例,信息模型中定义的各类对象多达300个左右,需要设计和执行 的测试用例至少需要2000-3000个左右。现有SNMP接口信息模型测试技术中,所有的测试 用例都需要测试人员手工编写和手动执行,还需要测试人员人工判定测试结果以及将手工 测试结果填入ICS文稿并编写测试报告。采用这种方法进行SNMP接口信息模型测试,给测 试人员带来繁重的工作量,测试效率低下。(3)测试结果受人为因素的影响比较大。现有技术中,SNMP接口信息模型测试过程中的测试用例设计、测试用例执行、测试 用例执行结果评判、测试结果记录和测试报告编写都需要测试人员的人为干预,测试人员 在参与上述工作的过程中,有可能由于其知识结构、疲劳度、与被测用户关系等客观或主观 原因,影响到最终测试结果的准确性和公正性。(4)标准化程度低。现有技术中,测试过程大多不符合行业标准的要求,测试结果的存储和呈现格式 各异,不利于相关技术人员间的交流和对测结果数据的阅读。

发明内容
(一)要解决的技术问题本发明要解决的技术问题是如何提高在测试文档生成、测试用例生成、测试用例 执行、测试结果判定和测试报告生成等SNMP接口信息模型测试各步骤中的自动化测试水 平、简化SNMP接口信息模型测试的复杂程度、提高SNMP接口信息模型测试的效率,以及减 少人为因素对测试结果准确性和公正性的影响。( 二 )技术方案为达到上述目的,本发明提供了一种SNMP接口信息模型一致性自动化测试方法, 包括以下步骤首先根据进行SNMP接口信息模型一致性测试的管理对象的定义信息以及不同管 理对象的类型生成相应的测试用例,具体方式如下对于叶对象,根据SNMP接口信息模型 中该叶对象的访问权限,生成相应的读测试用例和写测试用例;对于表对象,根据SNMP接 口信息模型中该表对象下各列对象的访问权限生成相应的读测试用例和写测试用例,还生 成该表对象的索引关系测试用例;对于通知对象,生成相应的通知测试用例;然后执行测试用例,并对执行结果进行分析,最后根据分析结果生成测试记录和 测试报告。其中,所述执行测试用例,并对执行结果进行分析的步骤具体包括S201读取测试用例列表文件,获取列表中状态为未执行的测试用例文件索引;S202解析步骤S201得到的索引对应的测试用例文件,提取其中的SNMP原语参数信息,生成SNMP请求报文;S203解析步骤S201得到的索引对应的测试用例文件,提出其中的预期测试结果, 作为测试结果判定条件;S204发送步骤S202生成的SNMP请求报文给被测系统,接收被测系统返回的SNMP 响应报文;S205按照步骤S203得到的结果判定条件,检查步骤S204收到的SNMP响应报文中 对象实例的待检查信息是否与预期测试结果一致,若所有待检查信息均与预期测试结果一 致,则判定测试用例执行结果为通过,否则判定为未通过,并自动生成相应的缺陷说明;S206存储测试用例执行结果到测试用例列表中,修改该测试用例状态为已执行;S207判定测试用例列表中是否还存在状态为未执行的测试用例,若存在,则回到 步骤S201继续执行,否则根据分析结果生成测试记录和测试报告。其中,在生成测试用例之前还包括如下步骤Si,编译SNMP接口信息模型定义的管理信息库MIB文件,解析所述MIB文件中对 各管理对象进行定义所得到的定义信息,将各管理对象以对象标识符OID为索引构建管理 信息树MIT ;S2,从所述SNMP接口信息模型中定义的所有管理对象中选择进行信息模型一致 性测试的管理对象;S3,从所述MIT中获取所选择的管理对象的定义信息,以形成SNMP接口实现一致 性声明ICS文稿。其中,所述ICS文稿为符合通信行业标准YD/T 1145-2001中所要求格式的文稿。其中,所述生成的测试记录通过在所述ICS文稿基础上填写相应测试结果单元的 方式生成。其中,生成的测试用例包括执行该测试用例的相关SNMP原语参数和预期测试结 果,其中,预期测试结果包括管理对象的数据类型和数值范围要求。本发明还提供了一种SNMP接口信息模型一致性自动化测试系统,包括测试用例生成与存储模块,用于根据所获取的管理对象的定义信息以及不同管理 对象的类型生成相应的测试用例;测试用例解析执行模块,用于执行所述测试用例;测试用例执行结果分析模块,用 于对测试用例的执行结果进行分析;测试报告生成与存储模块,用于根据分析结果生成ICS测试记录作为测试报告。其中,该系统还包括SNMP接口信息模型编译模块,用于编译简单网络管理协议SNMP接口信息模型定 义的管理信息库MIB文件,并解析所述MIB文件中对各管理对象定义的定义信息;MIT管理模块,用于将各管理对象以对象标识符OID为索引构建管理信息树MIT ;测试范围配置模块,用于从所述SNMP接口信息模型中定义的所有管理对象中选 择进行信息模型一致性测试的管理对象;ICS文稿生成与存储模块,用于从所述MIT中获取所选择的管理对 象的定义信息, 以形成SNMP接口实现一致性声明ICS文稿。(三)有益效果
本发明提出的技术方案通过将SNMP接口信息模型中各管理对象的定义信息以 管理对象的0ID(0bject Identifier,对象标示符)为索引组织成一棵MIT(Management Information Tree,管理信息树)进行存储,便于管理对象信息的检索;并且通过在测试文 档生成、测试用例生成、测试用例执行、测试结果评判和测试报告生成等SNMP接口信息模 型测试的各个步骤中运用测试自动化技术(包括本发明中的测试文档自动生成、测试用例 自动生成、测试用例自动执行、测试结果自动评判和测试报告自动生成技术),一方面可大 幅提高SNMP接口信息模型测试的工作效率,另一方面还可以减少人工编写测试文档、测试 用例、测试报告时出错的风险,以及避免人工评判测试结果时的公正性风险;通过使生成的测试文档和测试记录均遵循通信行业标准 YD/T1145-2001《网络管 理接口测试方法》中对SNMP ICS的要求,标准化程度高,便于相关技术人员阅读;通过分析导入的SNMP接口信息模型定义文件来自动生成测试文档和测试用例, 使得该技术方案具有较高的通用性和灵活性,适用于针对任何SNMP接口信息模型定义的 一致性测试。


图1是本发明实施例的方法流程图;图2是本发明实施例的方法中自动执行测试用例和判定测试结果的流程图;图3是本发明实施例的系统结构图。
具体实施例方式下面结合附图和实施例,对本发明的具体实施方式
作进一步详细说明。以下实施 例用于说明本发明,但不用来限制本发明的范围。依据本发明实施例的方法提供一种SNMP接口信息模型一致性自动化测试方法, 其流程图如图1所示,包括S101)编译SNMP接口信息模型定义的文件,即MIB文件解析MIB文件中对各管 理对象的定义信息,以OID为索引构建一棵MIT存储模型中各管理对象的定义信息。S102)配置测试范围依据测试项目需求,从接口信息模型定义的所有管理对象 中挑选出需要进行信息模型测试的管理对象,纳入测试范围。缺省将接口信息模型中定义 的所有管理对象纳入测试范围。S103)自动生成SNMP接口 ICS文稿针对纳入测试范围的每个管理对象,从MIT中 提取管理对象的定义信息,自动生成相应的SNMP接口对象支持表格。按照SNMP接口 ICS 文稿的格式要求(通信行业标准YD/T 1145-2001中要求的格式)对生成的各个对象支持 表格进行组织,形成SNMP接口 ICS文稿,作为SNMP接口信息模型测试的依据和记录模板。S104)自动生成SNMP接口信息模型测试用例针对纳入测试范围的每个管理对 象,从MIT中提取管理对象的定义信息,自动生成相应的SNMP接口信息模型测试用例。其 中,不同类型的管理对象,需要生成的测试用例数量和类型均有不同。对于叶对象,需要根 据模型中该叶对象的访问权限定义生成相应的读测试用例和写测试用例;对于表对象,不 仅需要根据模型中该表对象下各列对象的访问权限定义生成相应的读测试用例和写测试 用例,还需要生成该表对象的索引关系测试用例;对于通知对象(陷阱对象),需要生成相应的通知测试用例。
上述生成的测试用例包括执行该测试用例的相关SNMP原语参数和预期测试结 果,预期测试结果中应包括该对象实例的数据类型和数值范围要求。最后,生成测试用例列 表文件存储所有测试用例文件的索引。S105)自动执行测试用例和判定测试结果按照图2所示的流程自动执行测试用 例,并自动判定测试用例的执行结果。具体步骤包括S201)读取测试用例列表文件,获取列表中状态为未执行的测试用例文件索引。S202)解析步骤S201得到的索引对应的测试用例文件,提取其中的SNMP原语参数 信息,生成SNMP请求报文。S203)解析步骤S201得到的索引对应的测试用例文件,提出其中的预期测试结 果,作为测试结果判定条件。S204)发送步骤S202生成的SNMP请求报文给被测系统,接收被测系统返回的 SNMP响应报文。S205)按照步骤S203得到的结果判定条件,检查步骤S204收到的SNMP响应报文 的错误索引、错误状态、以及报文中对象实例的标识、数据类型、数值范围等信息是否与预 期测试结果。若所有检查结果均与预期测试结果一致,则判定测试用例执行结果为通过,否 则判定为未通过,并自动生成相应缺陷说明。S206)存储测试用例执行结果到测试用例列表中,修改该测试用例状态为已执行。S207)判定测试用例列表中是否还存在状态为未执行的测试用例,若存在则回到 步骤S201继续执行,否则继续执行步骤S106。S106)将测试用例执行结果自动填入ICS文稿,生成测试记录针对纳入测试范围 的每个管理对象,提取相应的测试用例执行结果,填写ICS文稿相应表格的测试结果单元 生成测试记录文件。对于叶对象,需根据读测试用例和写测试用例的执行结果填写ICS文 稿中的叶支持表格中的相应单元;对于表对象,除了需要根据所包含的列对象的读测试用 例和写测试用例的执行结果填写列支持表格中的相应单元外,还需要根据索引关系测试用 例的执行结果填写表索引支持表格中的相应单元,最后还需要根据上述测试用例的最坏执 行结果,填写表支持表格中的相应单元;对于通知对象,需根据通知测试用例的执行结果填 写ICS文稿中通知支持表格中的相应单元。填写测试记录时,如果测试用例的执行结果为 未通过,还需要在ICS文稿相应表格的附件信息单元中填写相应的缺陷说明信息。S107)自动生成SNMP接口信息模型测试报告统计测试范围内所有管理对象的测 试结果,按照测试报告模板生成测试报告文件,将测试记录作为测试报告附件。统计的信息 应包括但不仅限于测试记录中叶对象、表对象和通知对象的总数、测试通过数以及发现的 缺陷数。本发明还提供了一种实现SNMP接口信息模型一致性自动化测试的系统,该系统 包括SNMP接口信息模型编译模块、MIT管理模块、测试范围配置模块、ICS文稿生成与存储 模块、测试用例生成与存储模块、测试用例解析执行模块、测试用例执行结果分析模块和测 试报告生成与存储模块。系统结构如图3所示1) SNMP接口信息模型编译模块负责对导入系统的SNMP信息模型定义文件(MIB 文件)的编译和解析工作,在完成信息模型的完整性和正确性检查后,提取模型中定义的各管理对象的定义信息传递给MIT管理模块。2)MIT管理模块根据SNMP接口信息模型编译模块提供的管理对象定义信息,将 各管理对象按OID组织成MIT进行存储。3)测试范围配置模块负责提供界面列出所有模型中定义的管理对象供用户从中选择纳入测试范围的管理对象。4) ICS文稿生成与存储模块根据测试范围配置模块提供的需要测试的管理 对象列表,从MIT管理模块中获取相应对象的定义信息,生成符合通信行业标准YD/T 1145-2001中要求格式的SNMP ICS文稿,作为测试规范和测试记录模板。5)测试用例生成与存储模块根据测试范围配置模块提供的需要测试的管理对 象列表,从MIT管理模块获取相应对象的定义信息,再根据不同对象的类型生成相应的测 试用例文件,最后生成测试用例列表文件存储所有测试用例文件的索引。6)测试用例解析执行模块负责依次解析测试用例列表中的测试用例文件,提取 其中的SNMP协议原语参数信息,构建SNMP请求原语,发送给被测系统并接收被测系统的 SNMP响应原语,解包后将相关响应信息传递给测试用例执行结果分析模块。7)测试用例执行结果分析模块在收到测试用例解析执行模块提供的应答消息 信息后,提取测试用例文件的预期测试结果对应答消息内容进行各项检查,若均与预期测 试结果一致,则判定测试用例执行结果为通过;否则判定为未通过,并生成相应的缺陷信 肩、ο8)测试报告生成与存储模块负责根据测试用例执行结果分析模块提供的测试 用例执行结果,在ICS文稿的测试结果单元中填入各管理对象的测试结果,生成ICS测试记 录,作为测试报告附件。在完成ICS测试记录生成后,该模块统计所有管理对象的测试结 果,生成SNMP接口信息模型测试报告。以下举例说明本发明的实施例。作为非限制性的例子,下面以测试通信行业标准YD/T 1147-2001《接入网网络管 理接口技术规范-ADSL部分》中定义的表对象adslLineTable、叶对象sysDateAndTime和 通知对象adslAtucInitFaiIureTrap为例来展示本发明的SNMP接口信息模型自动化测试 方法及系统。以测试表对象adslLineTable为例DSNMP 接口 信息模型编译模块对导入的 ADSL-LINE-MIB、ENTITY-MIB、IF-MIB、 SNMPv2-MIB等MIB文件进行编译,在完成MIB文件的正确性和完整性检查后,通过文法分 析提取MIB文件中的所有管理对象的定义信息。MIT管理模块依据各定义信息中的OID属 性,组织成一棵MIT存储。2)测试范围配置模块提供界面列出编译的MIB文件中定义的所有管理对象,测试 人员选择需要纳入测试范围的表对象adslLineTable。这里提到的界面可以是文字界面,也 可以是图形列表界面或树形控件界面,或者本领域普通技术人员所能想到的各种界面。3) ICS文稿生成与存储模块从测试范围列表中读取对象adslLineTable的0ID,利 用OID从MIT上检索对管理对象进行定义所得到的定义信息。分析到adslLineTable的对象 类型为表对象后,生成表对象支持表格,并进一步从MIT上读取表对象adslLineTable下包 f舌白勺各歹Il对象 adslLineCoding> adslLineType> adslLineSpecific> adslLineConfProfile和adslLineAlarmConfProfile的定义信息和表索引信息,分别生成相应的列对象支持表 格和索引行支持表格。对生成的支持表格进行分类整理合并,按照标准YD/T 1145-2001要 求格式组织成ICS文稿输出存储。4)测试用例生成模块从测试范围列表中读取对象adslLineTable的0ID,利用 OID从MIT上检索对象的定义信息。分析到adslLineTable的对象类型为表对象后,根 据 该表对象的索引信息生成索引关系测试用例ads 1 LineTab 1 ejndex,测试用例中包括 SNMP GetNext请求原语参数和应答消息的预期测试结果。进一步从MIT上读取表对象 adslLineTable 下包f舌白勺各歹[J对象 adslLineCoding> adslLineType> adslLineSpecific> adslLineConfProfile 和 adslLineAlarmConfProfile 的定义信息,为每个列对象分 别生成相应的读测试用例和写测试用例adslLineCoding_get、adslLineCoding_set、 adslLineType_get> adslLineType_set> adslLineSpecific_get> adsILineSpecifc_set> adsILineConfProfile_get> adsILineConfProfile_set> adslLineAlarmConfProfile_get 和adslLineAlarmConfProfile_set,测试用例中包括SNMP Get和Set i青求原语参数以及应 答消息的预期测试结果。5)测试用例解析执行模块依次解析测试用例列表中的测试用例文件,提取其中的 参数信息封装到SNMP请求原语中发送到被测系统,将接收到的应答消息解析后传递给测 试用例执行结果分析模块。测试用例执行结果分析模块提取测试用例文件中的预期测试结 果,对比应答消息的内容与测试用例的预期测试结果,判定测试用例的执行结果并存储到 文件。6)测试报告生成与存储模块提取全部测试用例的执行结果,依次填入ICS文稿的 相应表格中,形成测试记录。统计测试记录文件中各对象的测试结果,依据配置的测试报告 模板生成SNMP接口信息模型测试报告,并设置测试记录文件作为报告附件。以测试叶对象sysDateAndTime为例DSNMP 接口 信息模型编译模块对导入的 ADSL-LINE-MIB、ENTITY-MIB、IF-MIB、 SNMPv2-MIB等MIB文件进行编译,在完成MIB文件的正确性和完整性检查后,通过文法分 析提取MIB文件中的所有管理对象的定义信息。MIT管理模块依据各定义信息中的OID属 性,组织成一棵MIT存储。2)测试范围配置模块提供界面列出编译的MIB文件中定义的所有管理对象,测试 人员选择需要纳入测试范围的叶对象sysDateAndTime。这里提到的界面可以是文字界面, 也可以是图形列表界面或树形控件界面,或者本领域普通技术人员所能想到的各种界面。3) ICS文稿生成与存储模块从测试范围列表中读取对象sysDateAndTime的0ID, 利用OID从MIT上检索对象的定义信息。分析到sysDateAndTime的对象类型为叶对象后, 生成叶对象支持表格。对生成的支持表格进行分类整理合并,按照标准YD/T 1145-2001要 求格式组织成ICS文稿输出存储。4)测试用例生成模块从测试范围列表中读取对象sysDateAndTime的0ID,利用 OID从MIT上检索对象的定义信息。分析到sysDateAndTime的对象类型为叶对象后,生成 相应的读测试用例和写测试用例sysDateAndTime_get和sysDateAndTime_set,测试用例 中包括SNMP Get和Set请求的原语参数以及应答消息的预期测试结果。 5)测试用例解析执行模块依次解析测试用例文件sysDateAndTim^get和sysDateAndTimejet,提取其中的参数信息封装到SNMP请求原语中发送到被测系统,将接 收到的应答消息解析后传递给测试用例执行结果分析模块。测试用例执行结果分析模块提 取测试用例文件中的预期测试结果,对比应答消息的内容与测试用例的预期测试结果,判 定测试用例的执行结果并存储到文件。6)测试报告生成与存储模块提取全部测试用例的执行结果,依次填入ICS文稿的 相应表格中,形成测试记录。统计测试记录文件中各对象的测试结果,依据配置的测试报告 模板生成SNMP接口信息模型测试报告,并设置测试记录文件作为报告附件。以测试通知对象 adslAtucInitFaiIureTrap 为例
DSNMP 接口 信息模型编译模块对导入的 ADSL-LINE-MIB、ENTITY-MIB、IF-MIB、 SNMPv2-MIB等MIB文件进行编译,在完成MIB文件的正确性和完整性检查后,通过文法分析 提取MIB文件中的所有管理对象定义信息。MIT管理模块依据各定义信息中的OID属性,组 织成一棵MIT存储。2)测试范围配置模块提供界面列出编译的MIB文件中定义的所有管理对象,测试 人员选择需要纳入测试范围的通知对象adslAtucInitFailureTrap。这里提到的界面可以 是文字界面,也可以是图形列表界面或树形控件界面,或者本领域普通技术人员所能想到 的各种界面。3) ICS文稿生成与存储模块从测试范围列表中读取对象 adslAtucInitFailureTrap的0ID,利用OID从MIT上检索对象的定义信息。分析到 adslAtucInitFailureTrap的对象类型为通知对象后,生成通知对象支持表格。对生成的支 持表格进行分类整理合并,按照标准YD/T 1145-2001要求格式组织成ICS文稿输出存储。4)测试用例生成模块从测试范围列表中读取对象adslAtucInitFailureTrap的 0ID,利用OID从MIT上检索对象的定义信息。分析到adslAtucInitFailureTrap的对象类 型为通知对象后,生成相应的通知测试用例^dslAtucInitFailureTrapjrap,测试用例中 包括预期接收到的通知原语信息。5)测试用例解析执行模块解析测试用例文件adslAtucInitFailureTrapjrap, 提取其中的通知测试用例参数,监听被测系统发过来的通知原语,将接收到的通知消息解 析后传递给测试用例执行结果分析模块。测试用例执行结果分析模块提取测试用例文件中 的预期测试结果,对比通知消息的内容与测试用例的预期测试结果,判定测试用例的执行 结果并存储到文件。6)测试报告生成与存储模块提取全部测试用例的执行结果,依次填入ICS文稿的 相应表格中,形成测试记录。统计测试记录文件中各对象的测试结果,依据配置的测试报告 模板生成SNMP接口信息模型测试报告,并设置测试记录文件作为报告附件。由以上实施例可以看出,本发明的技术方案提高了在测试文档生成、测试用例生 成、测试用例执行、测试结果判定和测试报告生成等SNMP接口信息模型测试各步骤中的自 动化测试水平、简化了 SNMP接口信息模型测试的复杂程度、提高了 SNMP接口信息模型测试 的效率,并减少了人为因素对测试结果准确性和公正性的影响。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人 员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型 也应视为本发明的保护范围。
权利要求
一种SNMP接口信息模型一致性自动化测试方法,其特征在于,包括以下步骤首先根据进行SNMP接口信息模型一致性测试的管理对象的定义信息以及不同管理对象的类型生成相应的测试用例,具体方式如下对于叶对象,根据SNMP接口信息模型中该叶对象的访问权限,生成相应的读测试用例和写测试用例;对于表对象,根据SNMP接口信息模型中该表对象下各列对象的访问权限生成相应的读测试用例和写测试用例,还生成该表对象的索引关系测试用例;对于通知对象,生成相应的通知测试用例;然后执行测试用例,并对执行结果进行分析,最后根据分析结果生成测试记录和测试报告。
2.如权利要求1所述的SNMP接口信息模型一致性自动化测试方法,其特征在于,所述 执行测试用例,并对执行结果进行分析的步骤具体包括S201读取测试用例列表文件,获取列表中状态为未执行的测试用例文件索引;S202解析步骤S201得到的索引对应的测试用例文件,提取其中的SNMP原语参数信息, 生成SNMP请求报文;S203解析步骤S201得到的索引对应的测试用例文件,提出其中的预期测试结果,作为 测试结果判定条件;S204发送步骤S202生成的SNMP请求报文给被测系统,接收被测系统返回的SNMP响应 报文;S205按照步骤S203得到的结果判定条件,检查步骤S204收到的SNMP响应报文中对象 实例的待检查信息是否与预期测试结果一致,若所有待检查信息均与预期测试结果一致, 则判定测试用例执行结果为通过,否则判定为未通过,并自动生成相应的缺陷说明;S206存储测试用例执行结果到测试用例列表中,修改该测试用例状态为已执行;S207判定测试用例列表中是否还存在状态为未执行的测试用例,若存在,则回到步骤 S201继续执行,否则根据分析结果生成测试记录和测试报告。
3.如权利要求1或2所述的SNMP接口信息模型一致性自动化测试方法,其特征在于, 在生成测试用例之前还包括如下步骤Si,编译SNMP接口信息模型定义的管理信息库MIB文件,解析所述MIB文件中对各管 理对象进行定义所得到的定义信息,将各管理对象以对象标识符OID为索引构建管理信息 树 MIT ;S2,从所述SNMP接口信息模型中定义的所有管理对象中选择进行信息模型一致性测 试的管理对象;S3,从所述MIT中获取所选择的管理对象的定义信息,以形成SNMP接口实现一致性声 明ICS文稿。
4.如权利要求3所述的SNMP接口信息模型一致性自动化测试方法,其特征在于,所述 ICS文稿为符合通信行业标准YD/T1145-2001中所要求格式的文稿。
5.如权利要求3所述的SNMP接口信息模型一致性自动化测试方法,其特征在于,所述 生成的测试记录通过在所述ICS文稿基础上填写相应测试结果单元的方式生成。
6.如权利要求1所述的SNMP接口信息模型一致性自动化测试方法,其特征在于,生成 的测试用例包括执行该测试用例的相关SNMP原语参数和预期测试结果,其中,预期测试结 果包括管理对象的数据类型和数值范围要求。
7.—种SNMP接口信息模型一致性自动化测试系统,其特征在于,包括测试用例生成与存储模块,用于根据所获取的管理对象的定义信息以及不同管理对象 的类型生成相应的测试用例;测试用例解析执行模块,用于执行所述测试用例;测试用例执行结果分析模块,用于对 测试用例的执行结果进行分析;测试报告生成与存储模块,用于根据分析结果生成ICS测试记录和测试报告。
8.如权利要求7所述的SNMP接口信息模型一致性自动化测试系统,其特征在于,还包括SNMP接口信息模型编译模块,用于编译简单网络管理协议SNMP接口信息模型定义的 管理信息库MIB文件,并解析所述MIB文件中对各管理对象定义的定义信息;MIT管理模块,用于将各管理对象以对象标识符OID为索引构建管理信息树MIT ; 测试范围配置模块,用于从所述SNMP接口信息模型中定义的所有管理对象中选择进 行信息模型一致性测试的管理对象;ICS文稿生成与存储模块,用于从所述MIT中获取所选择的管理对象的定义信息,以形 成SNMP接口实现一致性声明ICS文稿。
全文摘要
本发明公开了一种SNMP接口信息模型一致性自动化测试方法及系统。该方法包括步骤首先根据进行SNMP接口信息模型一致性测试的管理对象的定义信息以及不同管理对象的类型生成相应的测试用例,具体方式如下对于叶对象,根据SNMP接口信息模型中该叶对象的访问权限,生成相应的读测试用例和写测试用例;对于表对象,根据SNMP接口信息模型中该表对象下各列对象的访问权限生成相应的读测试用例和写测试用例,还生成该表对象的索引关系测试用例;对于通知对象,生成相应的通知测试用例;然后执行测试用例,并分析执行结果,并根据分析结果生成测试记录和测试报告。本发明能提高SNMP接口信息模型一致性测试的自动化测试水平,简化测试复杂度,提高测试效率。
文档编号G06F11/36GK101867501SQ20101018999
公开日2010年10月20日 申请日期2010年5月25日 优先权日2010年5月25日
发明者刘益畅, 唐凡, 李财云, 熊倩倩, 陈颖慧, 韩坤 申请人:北京宜富泰网络测试实验室有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1