硕士论文-网络管理系统应用软件的测试方法和实验.doc_第1页
硕士论文-网络管理系统应用软件的测试方法和实验.doc_第2页
硕士论文-网络管理系统应用软件的测试方法和实验.doc_第3页
硕士论文-网络管理系统应用软件的测试方法和实验.doc_第4页
硕士论文-网络管理系统应用软件的测试方法和实验.doc_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

密级:密级: 保密期限:保密期限: 硕士研究生学位论文硕士研究生学位论文 题目:题目: 网络管理系统应用软件的网络管理系统应用软件的 测试方法和实验测试方法和实验 学学 号:号: 姓姓 名:名: 专专 业:业: 导导 师:师: 学学 院:院: 2004 年年 2 月月 24 日日 独创性(或创新性)声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中 不包含其它人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或 其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所 做的任何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名: 日期: 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权 保留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅 和借阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印 或其它复制手段保存、汇编学位论文。 (保密的学位论文在解密后遵守此规定) 本学位论文不属于保密范围,适用本授权书。 本人签名: 日期: 导师签名: 日期: 网络管理系统应用软件的测试方法和实验网络管理系统应用软件的测试方法和实验 摘摘 要要 网络管理系统是通信网络的重要组成部分,是保证通信网正常、 经济、可靠、安全运行的重要支撑手段。网络管理系统应用软件是 网管系统中直接向人们体现网管系统功能的部分,随着网管系统的 应用程度不断深入和范围不断扩大,人们对网管系统应用软件的质 量的要求也在不断提高,而对网管系统应用软件的测试是保证网管 系统质量和可靠性的关键因素,也是对网管系统需求分析、软件设 计和编码的复审,因此进行对网管系统应用软件的测试方法的研究 意义重大。 本文就网管系统应用软件的测试方法方面的内容从理论和实践 的角度进行了探讨。本文借鉴已有的测试流程和测试方法,结合网 管系统应用软件自身的特点,分析了网管系统应用软件的测试方法。 该方法对网管系统应用软件测试中的主要阶段进行了描述,包括单 元测试阶段、集成测试阶段和系统测试阶段,重点阐述了各个阶段 应该采取的测试方法。此外,本文还介绍了根据该方法对长途传输 网管系统应用软件的测试实践过程,并分析了其实际应用的效果。 最后提出了该领域中一些亟待研究的问题。 关键词关键词: TMN 网络管理 测试方法 测试集 TEST METHOD AND EXPERIMENT ON NETWORK MANAGEMENT SOFTWARE ABSTRACT NMS(Network Management System) is an important part of telecommunication network, it is also an important method to assure telecommunication network to work normally, economically, efficiently, stably and safely. The NMS software is a part of NMS, it show the functions of NMS to customers directly. With the using of NMS, people are improving their request on the quality of NMS software. Testing is not only a key factor to verify the quality of NMS software, but also a review of requirement analysis, designing and coding, so the research on test method for NMS software is necessary. In terms of the present testing methodology and the characters of NMS software, this paper presents a new approach to test a NMS software both from a theoretical and practical view. This method is described by three periods, including unit testing period, integration testing period and system testing period. The emphasis of each period is the test method should be used. A test practice is also introduced which have been applied to a NMS software of long-distance transmission Network implementation. Some aspects that need further investigation are mentioned at the end. KEY WORDS: TMN network management test method test suite 目 录 第第 1 章章前言前言1 1.1研究背景1 1.2本文思路2 1.3研究生期间工作2 第第 2 章章综述综述4 2.1TMN 概述4 2.1.1TMN基本概念4 2.1.2TMN管理功能6.8 2.1.3网管系统应用软件的特点10 2.2软件测试概述14 2.2.1基本概念14 2.2.2测试的作用415 2.2.3测试方法16 2.2.4测试流程18 2.3网管系统应用软件测试需要解决的问题19 第第 3 章章网管系统应用软件测试方法网管系统应用软件测试方法21 3.1总体流程21 3.2测试原则21 3.3单元测试阶段22 3.3.1单元测试分析23 3.3.2单元测试的实施29 3.3.3适配器测试31 3.4集成测试阶段34 3.4.1集成测试策略34 3.4.2关键模块的确定13.37 3.5系统测试阶段37 3.5.1测试策略38 3.5.2测试环境40 3.5.3测试用例的设计41 第第 4 章章长途传输网综合网管系统应用软件的测试长途传输网综合网管系统应用软件的测试44 4.1系统介绍44 4.2测试实现46 4.2.1测试环境46 4.2.2测试过程47 4.2.3测试效果50 第第 5 章章待研究的问题待研究的问题51 缩略词缩略词53 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 1 第第 1 章章 前言前言 1.1 研究背景研究背景 随着通信与计算机技术的持续高速发展,通信网规模不断膨胀,网络复杂 性日益提高;同时,随着社会经济的发展,人们通信需求的不断增长,各种电 信新技术、新业务被先后引入通信网络。因此,为适应技术进步与网络发展的 趋势,最大限度地利用通信网络资源,降低运营成本,提高服务质量,伴随着 网络与业务的发展,需要建设高质量的通信网络管理系统。 在网管系统建设的实践中,人们愈发清楚地认识到,网络管理系统是通信 网络的重要组成部分,是保证网络正常、经济、可靠、安全运行的重要支撑手 段。同时,人们从网管研究、开发、建设过程中逐渐对网管系统建设中的基本 问题、难点和规律有了更加深入的理解,提出了一系列解决问题的思路和方法, 如 NSA(Network/Service/Application)1、TMN(Telecommunications management network)2、CORBA(Common Object Request Broker Architecture)3等。在这些 工程化的网络管理技术与标准的指导下,网管系统的建设得以迅速有效地开展。 随着市场经济对传统产业的剧烈冲击、电信体制改革的不断深化、入世等 环境的影响,网管系统提供商所面临的竞争越来越激烈。不断引进新技术,降 低运营成本,提高软件质量是增强竞争力的有力手段之一。这样,越来越多的 科研人员、网管系统提供商等都会遇到如何保证网管系统的质量和可靠性,在 对已有的网管系统进行扩充和升级(改进)之后如何继续保持其质量和可靠性 等问题。 对网管系统应用软件的测试是保证网管系统质量和可靠性的关键因素,也 是对网管系统需求分析、软件设计和编码的复审。在网管系统研发或者升级的 过程中引入高质量的软件测试技术,可以大幅度地提高网管系统的质量和可靠 性。 目前,对网管系统应用软件测试的研究还不是很多,本论文试图从一般软 件系统测试和网管系统测试的共性和个性的比较出发,给出网管系统应用软件 测试的特点和方法,对其测试的方法和技术进行研究,同时,结合综合网管系 统的实际测试介绍测试的过程以及测试的效果。 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 2 1.2 本文思路本文思路 本文从理论和实践的角度给出了网管系统应用软件的测试方法。 本文总结了作者在北京邮电大学通信网与交换技术国家重点实验室从事网 管系统应用软件测试研究的经验,在借鉴一般软件测试方法和测试模型的基础 上,提出了网管系统应用软件的测试方法。 第一章介绍了网管系统应用软件测试方法研究的背景。 第二章介绍了 TMN 的概念以及现有的一般软件测试的理论和方法,并结 合网管系统应用软件的特点分析了网管系统应用软件测试过程中需要解决的问 题。 第三章按照网管系统应用软件开发生命周期中的不同阶段提出了相应的测 试方法,这些阶段包括单元测试阶段,集成测试阶段和系统测试阶段,这一系 列测试方法组成了网管系统应用软件的测试方法。 第四章介绍了第三章中描述的网管系统应用软件测试方法在长途传输网综 合网管系统应用软件测试过程中的应用以及测试效果。 第五章提出了网管系统应用软件测试中尚待研究的问题。 1.3 研究生期间工作研究生期间工作 本人作为北京邮电大学通信网与交换技术国家重点实验室的一名硕士研究 生,在研究生期间主要从事电信网管系统应用软件测试理论和实践方面的研究 工作,并且还参与了一系列网络管理系统项目的实际测试工作。参与的主要科 研工作如下: (1)移动汇接网综合网管系统的测试实现。作为测试小组的主要成员,完 成了性能管理、任务管理子系统的测试实现。 (2)传送网综合网管系统的测试设计与实现。作为测试小组主要成员,完 成了告警和故障管理、系统管理、安全管理子系统的测试设计与实现。 (3)长途传输网综合网管系统的测试设计与实现。作为测试小组主要成员, 完成了安全管理、系统管理、告警和故障管理子系统的测试设计与实 现。 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 3 (4)自动测试工具在网管系统测试中的作用评估。作为评估小组负责人, 领导并参与了对将 Rational 系列测试工具在网管系统测试中应用的可 行性分析,并完成了评估报告。 经过两年多时间的理论学习和工作实践,对网管系统有了较深入的了解, 对网管系统应用软件的测试方法、测试工具、测试流程等相关测试技术进行了 研究,系统学习了软件测试的理论知识。这些工作为本论文的研究工作提供基 础和实践的经验。 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 4 第第 2 章章 综述综述 2.1 TMN 概述概述 TMN(Telecommunications Management Network)即电信管理网,是三大支撑 网络(同步网、信令网、电信管理网)之一。 国际电信联盟ITU在 M.3010 建议中指出,电信管理网的基本概念是提供 一个有组织的网络结构,以取得各种类型的运行系统之间、运行系统与电信设 备之间的互连。它是采用商定的具有标准协议和信息接口进行管理信息交换的 体系结构。提出 TMN 体系结构的目的是支撑电信网和电信业务的规划、配置、 安装、操作及组织。 2.1.1TMN 基本概念基本概念 TMN 的目的是提供一组标准接口,从而使网络操作、组织管理、维护管理 及对网络单元的管理变得容易实现。为构造整个电信管理网,ITU-T 从管理功 能块的划分、信息交互的方式和物理实现三个不同的侧面定义 TMN 的体系结 构,即 TMN 的功能体系结构、信息体系结构和物理体系结构。 2.1.1.1 TMN 功能体系结构功能体系结构126 TMN 的功能体系结构从逻辑上描述 TMN 内部的功能分布情况,既不涉及 物理细节,也不关心信息的表示方式。其基本思想是定义一组标准的功能块和 有可能发生信息交换的参考点,TMN 的功能由通过参考点的交互的标准功能块 组合完成。如图 2-1 所示。 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 5 图 2-1 TMN 功能体系结构 TMN 功能体系结构中包含五种基本功能块,即运行系统功能 OSF(Operating System Function)、协调功能 MF(Mediation Function)、网络单元 功能 NEF(Network Element Function)、Q 适配器功能 QAF(Q Adapter Function)和 工作站功能 WSF(Work Station Function)。 OSF 处理与管理相关的信息,以支持或控制不同管理功能的实现。对应 TMN 的管理分层(见 3.2.3 节),可以在逻辑功能上划分为不同的层,即事务管 理 OSF,业务管理 OSF,网络管理 OSF,网元管理 OSF 等。 MF 介于 OSF 与 NEF(或 QAF)之间,起协调和中介作用。它按照 OSF 的要 求,对来自 NEF(或 QAF)的信息进行适配、过滤和压缩等处理,使网元到 OSF 的结构更加灵活。 NEF 与 TMN 中其它功能块进行通信以便受其监视和控制。网元中为了被 管理而向 TMN 描述的通信和支持功能是 NEF 的一部分,这部分功能属于 TMN。 QAF 用来将不具备标准 TMN 接口的 NEF 或 OSF 连接至 TMN 内部,其任 务是进行 TMN 接口和非 TMN 接口之间的转换。 WSF 为 TMN 的用户提供一种解释 TMN 信息的手段,其功能包括终端的 安全接入和注册、识别和确认输入、格式化和确认输出、接入 TMN 等。 TMN 利用数据通信功能(DCF)作为上述功能块之间交换信息的手段。 参考点是表示两个功能块之间进行信息交换的概念上的一个点,通过它来 识别功能块的边界和功能块之间交互的信息类型。TMN 中有三类参考点,即: q 参考点,f 参考点和 x 参考点。另外,TMN 与外界的参考点为 g 参考点和 m 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 6 参考点。 q 参考点用来连接 OSF、QAF、MF 和 NEF。通常将 NEF、QAF 与 MF 间 的参考点称作 qx参考点,而将 QAF、NEF、MF 和 OSF 间的参考点称作 q3参 考点。 f 参考点用来连接 OSF、MF 和 WSF;x 参考点用于 OSF 和其它 TMN 的 OSF 之间;m 参考点连接 QAF 和非 TMN 标准的网元;g 参考点位于 WSF 和 网管用户之间。 2.1.1.2 TMN 物理体系结构物理体系结构126 TMN 的物理体系结构主要描述 TMN 内的物理实体及其接口,包含了为实 现 TMN 的功能所需要的各种物理配置。其中包括如下物理实体:运行系统 OS(Operating System),网络单元 NE(Network Element),Q 适配器 QA(Q Adapter),工作站 WS(Work Station),协调设备 MD(Mediation Device)和数据通 信网 DCN(Data Communication Network)。上述物理实体之间的接口为 Q 接口 (又分为 Q3和 Qx接口)、F 接口和 X 接口。如图 2-2 所示。 图 2-2 TMN 物理体系结构 运行系统 OS 主要完成 OSF 功能,即实现管理应用功能,同时也可完成 WSF 和 QAF 功能。 工作站 WS 是执行 WSF 功能的设备,主要完成 f 参考点信息与 g 参考点显 示格式间转换,即完成 TMN 内部信息描述方式与人机接口表示形式间转换功 能。用户通过 WS 接入 TMN。 协调设备 MD 是执行 MF 功能的设备,主要完成 Q 适配器或 TMN 网元和 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 7 运行系统之间的协调,有时也能提供 QAF,WSF 甚至 OSF 功能。 Q 适配器 QA 完成运行系统与非 TMN 网元之间的接口适配,即 QAF 功能。 NE 由执行 NEF 的电信设备和支撑设备组成,也可以按照实际需要完成其 它功能,最常见的是完成 MF 功能。 数据通信网 DCN 是 TMN 内完成 DCF 功能的通信网,为 TMN 的物理实体 间提供信息传递服务,只提供 OSI 参考模型的下三层功能,第 4 层以上的信息 交换功能由物理实体间完成。DCN 可以由不同类型的通信子网互联而成,如公 用电话网,DDN,X.25,专线网络,ISDN,LAN 或 SDH DCC 等。 TMN 功能块可以由不同的物理配置,物理实体和功能实体间存在灵活的映 像关系,如表 2-1 所示。其中“M”表示必备, “O”表示任选。 表 2-1 TMN 功能实体和物理实体之间的关系 NEFMFQAFOSFWSF NEMOOOO MDMOOO QAM OSOOMO WSM 2.1.1.3 TMN 信息体系结构信息体系结构126 TMN 的信息结构主要用来描述各功能实体之间交换的不同类型的管理信息, 体现在以下几个方面:管理层次模型,管理信息模型和管理组织模型。 (1)管理层次模型 广义的网络管理不仅包括对网络本身的管理,还包括对网络上的业务、运 营商的活动等的管理。为了便于对范围广泛的管理对象进行有效的分析、管理 和操作,ITU-T 提出了 TMN 的分层管理模型。 TMN 的管理层次模型从高到低依次为:事务管理层(Business Management Layer),业务管理层(Service Management Layer),网络管理层(Network Management Layer),网元管理层(Network Element Management Layer)和网元层 (Network Element Layer),相邻层之间由 q 参考点分隔。 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 8 网元管理层实现对单个网元的管理;网络管理层从全网的观点对所辖网络 内的所有网元进行管理;业务管理层较少涉及网络或设备的物理特性,主要负 责网络提供的业务的管理;事务管理层主要关注网络和业务的总体规划与决策, 负责设定目标任务。 (2)管理信息模型 管理信息模型是对网络资源及其所支持的管理活动的抽象表示。TMN 中采 用面向对象技术进行信息的建模,被管理的网络资源被抽象为被管对象 (Managed Object,简称 MO)。这里资源可以泛指一切被管理的物理和逻辑对象, 诸如系统、设备、部件、通信协议、应用程序和网络服务等。所谓的信息模型 可以简单地看作一组相关 MO 的集合,其实质是一种管理信息的组织方式。 被管对象的定义涉及以下主要方面: 被管对象的可见属性 可施加于被管对象的操作 被管对象对管理操作或其它触发条件(如门限条件)的反应 被管对象可发出的通知,如事件和告警上报 (3)管理组织模型 管理组织模型描述了 TMN 的结构和管理层内以及管理层间的 TMN 功能, 它主要规定了管理应用进程担任角色的能力,以及角色间的关系。管理进程可 以作为管理者(Manager)担任控制角色,也可以作为代理(Agent)担任被控 角色。管理者的任务是发送管理和控制命令,并接收代理的响应和通知;代理 的任务是直接管理被管对象,响应管理的管理请求、并发送反应被管对象状态 和行为的通知给管理者。TMN 结构中各种角色的关系如图 2-3 所示。 图 2-3 管理者、代理与被管对象间的关系 2.1.2TMN 管理功能管理功能6 TMN 支持多种管理功能,其中主要包括电信网络的操作、组织、维护和提 供。至于操作、组织、维护和提供四方面的具体含义,取决于电信主管部门的 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 9 管理组织结构和管理模式的要求。在 TMN 内部交换的信息也许用来支持多种 管理用途,而这种管理信息的分类与信息的构成没有直接的关系。TMN 管理功 能利用 OSI(Open System Interconnection)系统管理功能并对其有所拓展,根 据应用范围的不同分为五个大类,它们是: (1) 性能管理 性能管理的目的是对网络、网络单元或设备进行性能监视,采集相关的性 能统计资料,评价网络和网络单元的有效性,报告电信设备的状态,支持网络 规划和网络分析。TMN 采集网元的服务质量 QoS(Quality of Service)信息, 对改进 QoS 提供支持,从而改进网络性能的表现和效率。 性能管理必须提供有效的方法完成下述任务: 性能质量保证 性能监视 性能控制 性能分析 (2) 故障(或维护)管理 故障(或维护)管理是这样一组功能集,它提供对电信网及其环境的异常 情况处理的支持手段,涉及故障的检测、隔离和修复。主要包括: 可生存性质量保证 告警监测 故障定位 故障修正 测试 障碍(报告)管理 (3) 配置管理 首先解释一个名词:网元(NE) ,网元是指由一个或多个机框或机盘组成, 能够独立完成一定的传输功能的通信设备。 配置管理对网元/网络设备进行整体控制。包括识别网元,从网元收集和向 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 10 网元发送与网元配置相关的资料,主要包括五个方面的内容: 网络规划与网络工程 安装 业务规划与合同协商 提供 状态与控制 (4) 账务管理 账务管理不仅仅指账单管理,还包括资费管理、收费与资金管理、财务审 计管理。 因账务管理的特殊性,它往往作为一个独立的管理系统而存在,如运营商 的计费管理系统。所以,实际投入使用的网管系统一般不提供账务管理的功能。 (5) 安全管理 安全管理功能有三个方面的含意:首先是保证事务处理的安全,这些功 能涉及所有 TMN 的管理逻辑分层,包括各层中的系统之间、系统与客户之间、 系统与内部用户之间的认证、访问控制、资料保密、资料的一致性及不可否认 处理等。要保证 TMN 本身与电信网的安全,对非法使用网络资源的事件进 行管理。安全的组织管理,即对安全信息的管理,这些安全信息是保证 TMN 和电信网的安全所必需的。 TMN 的目的是当管理业务的各个部分分驻在不同端节点系统上时,将这部 分的交互标准化,使管理业务能与远程的对等层直接进行通信。每一类管理功 能的范畴又可以分出许许多多子功能集。至于一个 TMN 的系统应该配置什么 样的管理功能,则取决于所需要的管理业务,和不同的电信设备相关,并不要 求必须具备标准中定义的所有功能。而且多个功能单元既可以集中在一台机器 上,也可以是分布在其它通过网络可以访问的计算机上,分布的功能单元之间 的接口可以是非标准接口,这些接口由网管系统开发商自主决定。 2.1.3网管系统应用软件的特点网管系统应用软件的特点 网管系统属于一种计算机软件系统,所以它除了具有通常的软件的特点, 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 11 也具有它自己的特殊性。 (1) 分布式体系结构。 网管系统应用软件包括图形用户界面(GUI,Graphical User Interfaces) ,管 理者(Manager)和代理者(Agent)三大块,其中的 GUI 可以分布在不同的用 户终端上;而为了负载平衡,合理利用设备和网络资源,Manager 中包含的不 同子系统(如告警故障管理、性能管理、配置管理等)也可以分布在不同的服 务器上;代理者中不同厂商的代理也可以分布在不同的设备上运行。它们之间 通过一定的通信机制相互联系,从而形成了一个分布式的网络体系结构。 一个典型的网络管理应用系统软件体系结构可以表示如图 2-4 所示。 图 2-4 基于 TMN 的网络管理应用软件系统结构 网管系统应用软件的 GUI 负责展现网管系统的功能并且把用户的操作转换 为命令通过一定的通信机制传递给管理者 Manager,真正处理用户命令的过程 是在 Manager 完成的,而代理者负责对 Manager 屏蔽不同厂商之间的网管接口。 (2) 对可靠性、稳定性要求极高。 F 接口 Manager 网管界面(WSF) 总线接口 安全管理模块 故障管理模块 配置管理模块 通信总线 性能管理模块 拓扑管理模块 帐务管理模块 其它 OSFQ 适配器 (QAF) 代理 (NEF) 命名服务等服务模块 GUI Agent 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 12 网管系统应用软件担负着对电信网的实时监控和管理的任务,理论上要求 连续不间断地运行,这就对网管系统应用软件的可靠性、稳定性和安全性提出 了极高的要求。 (3) 分层体现的管理功能。 网管系统的一系列管理功能是通过分层的体系结构体现出来的。TMN 的管 理层次由事务管理层(Business Management Layer) ,业务管理层(Service Management Layer) ,网络管理层(Network Management Layer)及网元管理层 (Network Element Management Layer)组成。 事务管理层由支持整个企业决策的管理功能组成,其用户为企业的最高管 理者。 业务管理层包括业务提供、业务控制与监测、与业务相关的计费处理,其 用户为业务的运营管理者。 网络管理层提供网上的管理功能,其用户为网络的管理组织者。 网元管理层实现对一个或多个网元的操作与管理,其用户为设备的操作人 员。 (4) 面向对象的开发技术。 面向对象的建模技术和开发方法是软件开发的趋势。通过使用面向对象的 建模技术,网管系统可以清楚地定义其管理对象的信息模型。在网管信息模型 中,通过被管对象类及其所具有的属性、行为和通知,可以清楚地表达人们对 所选择的被管资源进行管理时所涉及到的方方面面的需要。 而在网管系统开发过程中采用面向对象的开发方式,可以带来软件重用性 提高、软件结构更加清晰等好处,在新的被管对象加入网管系统或者出现新的 用户需求时,可以平滑快速地对原有系统进行升级和扩充,以实现新的功能点。 所以网管系统的一般都尽可能地采用面向对象的开发方式。 (5) 高度强调标准化。 TMN 是一个高度强调标准化的网络,这种标准化体现在 TMN 体系结构和 接口上。通过某种技术手段而不是 TMN 的标准接口技术,将现有的网管系统 互连起来,也可以实现管理网。但是这种非标准的互连而形成的综合管理系统/ 网络只能满足一时的管理需求,却不能对管理网络将来的发展有任何保证,因 为这种网络没有对外开放标准的共同认同,一旦网上引入新的业务、新的设备, 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 13 出现新的网管需求时,原有的网管系统就无法自然平滑地进行衔接和发展,也 不能实现与其它网管系统的互连、互操作。而在基于 TMN 标准的电信管理网 中,每一个系统的设计都遵从开放体系标准,系统的内部功能实现是面向对象 的,因此系统软件具备良好的重用性,可以克服传统管理网络的弊端。 (6) 不断扩充的管理需求。 随着电信技术的不断发展,电信设备和电信网络始终在不断地更新换代, 用户对于网管系统的功能需求也在不断地扩充,虽然 TMN 定义了网管系统的 五类基本的管理功能,但是实际应用过程中,不同用户的对网管系统的需求不 一样,即便是同样的用户,也会不断地扩充对网管系统管理功能的需求,这就 导致了网管系统必须在原有系统的功能上不断地扩充新的功能才能满足用户的 需求。 (7) 多厂商设备互联。 在通信设备市场日益开放的情况下,电信运营商在建设传送网络时,可以 有很大的自由度选择性价比最好的通信设备。同时考虑到成本和安全等各种因 素和制约条件,运营商通常不会仅采用一个提供商的设备。因此,电信网是一 个包含设备厂商众多、设备类型多样的复杂网络,形成了多厂商环境。这决定 了网管系统的管理对象是由多厂商的设备构成。 (8) 跨越多种平台。 网管系统的分布式体系结构导致 GUI、Manager、Agent 可以运行在不同的 设备上,它们对软件、硬件环境的要求,导致它们所运行的平台各异,例如一 个典型的综合网管系统运行的设备环境如图 2-5 所示: 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 14 微机微机笔记本 应用服务器应用服务器 应用服务器应用服务器 数据库 数据库 GUI Manager Agent 图 2-5 网管系统运行的设备环境 出于对易用性、易操作性以及设备成本的考虑,GUI 一般运行在微机上, 而微机上的多为 Windows 操作系统。 对于 Manager 和 Agent 的运行模块,则需要更多的考虑稳定性、安全性以 及设备的性能,所以运行 Manager 的应用服务器一般使用 Unix 操作系统。 数据库服务器则需要考虑稳定性、安全性以及数据吞吐量的因素,因而往 往也会使用 Unix 操作系统。 由此可见,出于不同的目的考虑,综合网管系统不可能将其所有的模块都 放在同样的软硬件平台上运行,这就势必要面临不同平台下的运行模块的互通 和互操作性问题。 (9) 规模灵活多变。 建设一个网络管理系统,并不意味着要实现所有的 TMN 标准中定义的管 理业务或功能,实施一个网络管理系统是与用户需求密切相关的。一个网管系 统可以是由一个单一的电信设备与一个运行系统(OS)连接而成的简单模式, 也可以是由许多不同的 OSs 与多种电信设备互连而成的复杂网络,在具体实施 上可以针对某一种电信业务的实际发展需要,及时调整 TMN 的应用范围和扩 展方向。 因而网管系统并不是一成不变的,它可以根据用户需求,实现 TMN 标准 中定义的若干管理业务或管理功能,这就形成了网管系统应用软件的规模灵活 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 15 多变的特点。 2.2 软件测试概述软件测试概述 1983 年 IEEE 提出的软件工程术语中给软件测试下的定义是:“使用人工 或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足 规定的需求或弄清预期结果与实际结果之间的差别” 。这个定义明确指出:软件 测试的目的是为了检验软件系统是否满足需求。 2.2.1基本概念基本概念 (1)缺陷(缺陷(Defect):一个产品异常。一个不满足合理用户需求的 (明显的或遗漏的)输出或性能特征。一个不正确或有遗漏的软件, 导致不能满足功能上或性能上的需求。任意背离了需求和约定的实 现。 (2)回归测试(回归测试(Regression Testing):验证修改未导致不期望的效果,并 且系统仍与其指定归约一致而选择性重新测试系统或构件。 (3)测试用例(测试用例(Test Case):实际上是对软件运行过程中所有可能存在的 目标、运动、行动、环境和结果的描述,是对客观世界的一种抽象, 包括输入、执行条件以及预期结果。一个好的测试用例具有很高的错 误发现率;一个成功的测试用例能检测到一个或多个迄今没有发现的 错误。 (4)测试点(测试点(Test Point):用于测试用例输入和状态变量的一个特殊值。 测试点(可用于多个测试用例)从值域中选择。 (5)测试集(测试集(Test Suite):一组相关的测试用例。服务于 IUT(Implementation Under Testing)的一个特殊版本的一个特殊测试 目标用的一组测试用例。 2.2.2测试的作用测试的作用4 软件测试的首要作用是发现错误。发现错误也许要花很大的代价,或者不 可能用其它的验证和确认技术去发现错误。第二个目的是用给定的测试集去说 明被测系统是符合用户需求中所作的规定的。 从软件产品的角度考虑,有效的测试对于生产可靠、安全和成功的系统是 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 16 必须的,实践表明,高质量的测试会带来非常高的产品质量。 下表中列出了对什么样的错误类型,应采取哪些最好的测试技术,这对于 网管系统测试中测试方法的选择是有一定的指导意义的。 表 2-1 不同测试技术能检测到的错误 使用的确认和验证使用的确认和验证错误类型错误类型一般原因一般原因 早期确认早期确认静态测试静态测试测试测试 缺乏可用性不良的用户接口设计 引发错误遗漏功能 需求遗漏 引发错误错误的能力 需求错误 引发错误 需求错误 编程错误 副作用和无法预 测的不得当的交 互特征 配置/集成错误 引发错误 需求错误 不合适的目标 无效算法 无效的编程 不可行问题 编程错误 性能不完全,实 时失败,同步死 锁,解锁等 配置/集成错误 需求错误不正确的输出 编程错误 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 17 配置/集成错误 编程错误异常终止 配置/集成错误 2.2.3测试方法测试方法 按照测试的出发点不同,软件测试方法可分为黑盒测试、白盒测试和灰盒 测试三种。 (1)黑盒测试5 黑盒测试也叫功能测试,是基于功能(或责任)的一种测试方法。黑盒测 试根据软件的功能说明(或需求描述)设计测试用例,并不涉及软件的内部构 造。它是一种传统的测试方法,有严格的规定和系统的方式可供参考。 黑盒测试不仅能够找到大多数其它测试方法无法发现的错误,而且些外购 软件、参数化软件包以及某些生成的软件,由于无法得到源程序,用其它方法 进行测试是完全无法完成的。 一个软件系统通常都是有层次的,软件的总体功能可能会分为若干个层次 来体现。因而,人们面临的一个实际问题是在哪个层次上进行测试。如果仅在 高层上进行测试,则可能忽略一些细节,测试无法达到一定的覆盖率要求;如 果在底层上进行测试,则可能忽略各功能之间的相互作用和相互依赖的关系, 测试就无法形成系统性。因此,高质量的软件测试需要研究和发展可靠并且高 效的黑盒测试方法。 黑盒测试从用户角度出发进行测试,因而能确保软件实现和功能说明(或 需求描述)的一致性;但是,它无法测试软件内部的特定部位,另外,黑盒测 试无法发现如功能说明本身有误这样的问题。 (2)白盒测试5 白盒测试也叫结构测试,是基于结构(或实现)的一种测试方法。白盒测 试根据 IUT 的内部结构设计测试用例。进行白盒测试需要完全了解程序的内部 结构和处理过程,对程序中所有的逻辑路径进行测试,检查程序的每条通路是 否都能按照预定的要求正确工作。 完全的白盒测试是保证程序中所有的路径都执行一次,这在大型软件测试 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 18 实现中是不可能的。因为即使一个非常小的控制流程,进行穷举测试所需要的 时间都是一个非常巨大的数字。 因此,白盒测试要求对程序的结构特性做到一定程度的覆盖,并以此为目 标,找出那些被忽视的程序错误。 白盒测试中常见的程序结构覆盖方法有: 语句覆盖:要求每一条执行语句都尽可能地被检验过。 分支覆盖:要求程序中所有判定的分支都尽可能得到检验。 条件覆盖:要求判定式的每个条件的取值都得到检验。 判断/条件覆盖:同时考虑条件的组合值及判定结果的检验。 路径覆盖:只考虑对程序路径的全面检验。 白盒测试又可以分成静态测试和动态测试两种。 静态测试在不实际运行代码的情况下测试软件的缺陷,包括代码检查、静 态结构分析、代码质量度量等。它可以由人工进行,充分发挥人的逻辑思维优 势,也可以借助软件工具自动进行。 动态测试需要实际运行软件,并使用设计的测试用例去测试软件的缺陷。 包括功能确认与接口测试、覆盖率分析、性能分析、内存分析等。 白盒测试能够对软件内部进行覆盖测试。但是,白盒测试无法检测软件的 外部特性,而且当软件结构本身有问题,例如程序逻辑有错误或者有遗漏时, 白盒测试无法检测出这样的缺陷。 (3)灰盒测试 黑盒测试和白盒测试各有自己的优缺点,构成互补关系,所以测试时需要 把二者结合起来,这就是灰盒测试。 从原理上讲,黑盒测试能检测出所有的错误,但是需要花费无限的时间。 白盒测试本质上是有限的,但即使是全部执行也不能测试出全部的错误。所以 某种程度上讲,测试的关键问题就是在黑盒测试和白盒测试之间如何进行选择 的问题。 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 19 2.2.4测试流程测试流程 软件测试的流程可以被抽象成模型,目前最流行的就是 V 模型7。 V 模型中的过程从左到右,描述了基本的开发过程和测试行为。V 模型的 价值在于它非常明确地标明了测试过程中存在的不同级别,并且清楚地描述了 这些测试阶段和开发过程期间各阶段的对应关系。 需求分析需求分析 概要设计 详细设计 编码单元测试 集成测试 系统测试 验收测试 图 2-5 测试流程的 V 模型 在 V 模型中,单元测试是基于代码的测试,可以由开发人员执行,以验证 其可执行程序代码的各个部分是否已达到了预期的功能要求; 集成测试验证了 2 个或多个单元之间的集成是否正确,并有针对性地对详 细设计中所定义的各单元之间的接口进行检查; 在所有单元测试和集成测试完成后,系统测试开始以用户环境模拟系统的 运行,以验证系统是否达到了在概要设计中所定义的功能和性能; 最后,当完成了所有单元、集成和系统测试工作后,由业务专家或用户进 行验收测试,以确保软件能真正符合用户业务上的需要并且软件特性(稳定性、 易用性和性能)能被用户所接受。 上述的是总体的测试流程,微观上看,每个测试阶段典型的测试过程为: (1)建立一个被测系统; (2)执行测试集; (3)使用覆盖工具或者覆盖理论评价测试集对被测系统的覆盖性; (4)如果需要,进一步开发附加的测试,检测被测系统未被覆盖的部分; (5)当满足一定的覆盖目标并且所有的测试均已通过就可以停止测试。 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 20 其中的一些步骤并不总是必要的和可行的,但是一次测试过程必须要执行 测试集并评估其结果。 2.3 网管系统应用软件测试需要解决的问题网管系统应用软件测试需要解决的问题 网管系统测试属于软件测试的一种,除了具备一般软件测试的特点以外, 也具有它自己的特殊性。所以,应结合现有的软件测试理论和网管系统自身的 特点,研究网管系统应用软件测试领域中的各种问题,本文要解决的是网管系 统应用软件的测试方法问题,网管系统应用软件的测试方法可以分解成三个不 同阶段,即:单元测试阶段,集成测试阶段和系统测试阶段来研究,这三个阶 段的测试方法共同组成网管系统应用软件的测试方法。下面就结合网管应用软 件的特点描述在确定测试方法的过程中这三个阶段分别需要解决的问题。 (1) 单元测试的测试方法 软件编码阶段的测试主要是单元测试。由于人们对网管系统应用软件的要 求是 724 小时不间断运行,这个要求在软件编码阶段就体现为对所有单个模 块的要求,只有每个模块都是稳定的和可靠的,才有可能保证整个应用软件的 稳定性和可靠性。如果有一个模块出现了问题,势必会影响整个软件系统的运 行,严重者甚至可能导致系统崩溃。 所以在单元测试阶段需要针对网管系统应用软件对可靠性、稳定性要求高 以及某些性能上有特殊要求的特点,研究应该从哪些方面对被测模块进行测试 以验证模块的正确性、可靠性、稳定性以及性能问题。 (2) 集成测试的测试方法 每个模块都是正确的并不意味着将它们组合在一起也能发挥正确的功能, 集成测试阶段就是要验证所有的模块之间的互操作的正确性。通常网管系统应 用软件的规模比较大,组成网管系统应用软件的模块非常多,那么应该用什么 样的策略将这些模块集合在一起进行测试呢?是等所有模块开发完成之后再一 次性把它们组合在一起测试还是按照某种顺序来集成是本阶段中的测试过程需 要解决的问题之一;另外,网管系统应用软件具有分布式的体系结构,不同的 模块通常分布在不同的操作系统平台上,典型的例子就是为了保证易用性人们 通常把用户接口部分放在 Windows 平台上运行,而为了保证稳定性和可靠性将 Manager 和 Agent 放在 Unix 平台上运行,这些模块跨平台的互操作是否正确是 集成测试阶段需要测试的一个重点。 (3) 系统测试的测试方法 北京邮电大学硕士学位论文 网络管理系统应用软件的测试方法和实验 21 集成测试完成之后就应该进入系统测试阶段,该阶段测试的焦点集中在整 个系统的功能和特性上。由于网管系统的被管对象通常是多个不同厂商的设备, 而在实验室条件下是不可能用真正的电信设备来当作被管对象的,即使是有真 正的电信设备,也不可能搭建一个和被管网络同样的网络作为被管对象来测试 网管系统软件,所以,这个阶段需要解决的问题是系统测试阶段如何搭建一个 测试环境,以及从哪些方面对网管系统进行测试才能彻底、全面地验证其功能 和特性。 如果网管系统应用软件在单元测试、集成测试、系统测试过程中都采用了 合理的测试方法,就能充分暴露出其各个阶段存在的问题,进而指导人们改进

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论