(通信与信息系统专业论文)面向ngoss测试的软件框架研究.pdf_第1页
(通信与信息系统专业论文)面向ngoss测试的软件框架研究.pdf_第2页
(通信与信息系统专业论文)面向ngoss测试的软件框架研究.pdf_第3页
(通信与信息系统专业论文)面向ngoss测试的软件框架研究.pdf_第4页
(通信与信息系统专业论文)面向ngoss测试的软件框架研究.pdf_第5页
已阅读5页,还剩138页未读 继续免费阅读

(通信与信息系统专业论文)面向ngoss测试的软件框架研究.pdf.pdf 免费下载

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

文档简介

北京邮电火学博士学位论文摘要 摘要 本文的主旨是要研究一个面向n g o s s ( n e x tg e n e r a t i o n o p e r a t i o ns y s t e m a n d s o f t w a r e ,下一代运营系统和软 牛) 测试的软件框架,用以指导n g o s s 测试系 统的建设及实际测试工作。首先利用d s s a ( d o m a i ns p e c i f i c s o i b , v a r e a r c h i t e c t u r e ,特定领域的软件体系结构) 过程分析n g o s s 测试工作的需求,在 此基础上构造出一个n g o s s 测试软件框架;然后用形式化语言x y z e 描述了 其中的通用测试体系结构,明确了框架中的基本构造块和变化性策略,并从该 框架中提取出与一致性测试工作相关的功能实体,得到n g o s s 一致性测试软件 框架;最后,在测试资源管理、结果自动分析及不确定性分析等方面举例说明 该框架的实例化过程,验证了n g o s s 测试软件框架的可用性。 概括起来,作者的研究工作主要有以下三点: 利用d s s a 过程,以n g o s s 测试工作的实际需求为出发点,构造出n g o s s 测试软件框架。该框架为n g o s s 测试系统的开发提供了一个粗粒度的通用体系 结构,其通用性体现在能够支持n g o s s 功能测试、性能测试以及一致性测试工 作,在设计测试系统的时候,结合具体的测试需求,该框架可被实例化为测试 系统的设计方案。同时,框架还包括一些基本构造块和相关变化性策略,基本 构造块实现了框架中的基础支撑功能,在框架的任意实例化过程中都保持不变; 变化性策略标示了框架在实例化对应该扩展的功能和细化的数据结构。基于该 框架可以快速构建测试系统: 对n g o s s 测试软件框架中的体系结构进行了求精和细化。首先分析了该体 系结构中测试资源管理、测试结果分析和测试流程控制等多个子系统的风格; 然后利用形式化语言x y z e 描述体系结构中的各个构件和连接件,得到了对 n g o s s 测试通用体系结构的完整描述;最后结合一致性测试工作的实际需求, 对体系结构中与一致性测试相关的部分进行求精和细化,得到了一致性测试体 系结构的形式化描述; 在对n o o s s 一致性测试体系结构形式化描述的基础上,以一致性测试工作 中的几个重要组成部分为例,说明实例化n g o s s 钡8 试软件框架的过程,验证该 北京邮电,i 学博士学位论文摘要 框架的可用性。针对测试资源管理,提出了测试资源管理模型和组织方式,达 到对测试资源有效管理的目的:针对测试结果自动分析,提出了测试结果自动 分析模型,实现了自动地对测试结果进行比对、分级等功能;针对测试执行过 程中的不确定性问题,分析了其产生的原因,然后说明了框架中的主- 从式的测 试执行体系结构是如何解决不确定性问题的。通过实践验证了n g o s s 测试软件 框架的可用性。 北京邮电大学博士学位论文a b s t r a c t a b s t r a c t t h el e i t m o t i vo ft h i sd i s s e r t a t i o ni s r e s e a r c h i n gas o f t w a r et e s tf r a m e w o r k0 1 1 n g o s s ( n e x tg e n e r a t i o no p e r a t i o ns y s t e ma n ds o f t w a r e ) w h i c hc a nb eu s e do n b u i l d i n go f n g o s st e s ts y s t e ma n dt e s tw o r k a tf i r s t , t h er e q m r e m e mo fn g o s s t e s ti s a n a l y z e dt h r o u g hd s s a ( d o m a i ns p e c i f i c s o f t w a r ea r c h i t e c t u r e ) ,a n da f r a m e w o r ki sb u i l tb a s e di t t h e nt h ec u r r e n ts o f t w a r et e s t a r c h i t e c t u r ei nt h e f r a m e w o r ki s d e s c r i p e db yx y z 厄a f o r m a ll a n g u a g e ,t h eb a s ee o n s t r a c tb l o c k a n dv a r i a b i l i t yp o l i c yi sd e f i n e da l s o n g o s sc o m p l i a n c es o f t w a r et e s tf r a m e w o r ki s d i s t i l l e df r o mn g o s ss o f t w a r et e s tf r a m e w o r k a tl a s t , t h ei n s t a n t i a t i o no ft h e f r a m e w o r ki s e x p l a i n e db yt h r e ee x a m p l e s :t e s tr e s o u r c em a n a g e m e n t , t e s tr e s u l t a n a l y z e a n dn o n - d e t e r m i n a t e da n a l y z e a l s ot h ee x a m p l e sv e r i f i e dt h ea b i l i t yo f n g o s ss o f t w a r et e s tf r a m e w o r k t h ec o n t r i b u t i o no f t h i sd i s s e r t a t i o ni n c l u d e s : b u i l tn g o s ss o f t w a r et e s tf r a m e w o r kb a s eo nt h er e q u i r e m e n to fn g o s s t e s t t h ef r a m e w o r kc a ns u p p l yac u r s o r yc u r r e n ta r c h i t e c t u r ef o rd e v e l o p m e n to f n g o s st e s ts y s t e m i tc a r l s u p p o r tn g o s s f u n c t i o n a lt e s t , p e r f o r m a n c et e s ta n d c o m p l i a n c e t e s t t h ef r a m e w o r kc a nb ei n s t a n t i a t e das o l u t i o no ft e s ts y s t e m w e c a nb u i l dt e s ts y t e m r a p i d l yb a s e d o nt h ef r a m e w o r k ; r e f i n dt h ea r c h i t e c t u r eo fn g o s s t e s ts e t c a r ef r a m e w o r k a tf i r s t t h es t y l e so f t e s tr e s o u r c e m a n a g e m e n t , t e s tr e s u l ta n a l y s e a n dt e s tw o r k f l o wc o n 仃o li s c o n s i d e r e d ;t h e nt h ei n t e g r i t yd e s c m p t i o no fn g o s st e s tc u r r e n ts o f t w a r ei s p r o p o s e d ;a tl a s t ,t h ec o m p l i a n c et e s ta r c h i t e c t u r ei sc o n s i d e r e db a s e do nt h er e a l r e q u i r e m e n to f n g o s s ; e x p l a i n e d i n s t a n t i a t i o no fn g o s ss o f t w a r et e s tf r a m e w o r k t h r o u g h s o m e i m p o r t a n tp a r t s i n c o m p l i a n c e t e s t am o d e lo ft e s tr e s o u r c em a n a g e m e n ti s p r o p o s e df o rm a n a g i n gt e s tr e s o u r c ee f f i e n f l y am o d e lo fa n a l y z et e s tr e s u l t si s p r o p o s e d f o ra u t o m a t i ca n a l y s eo f t e s t r e s u l t s e x p l a i n e dh o w t h en g o s ss o f t w a r e t e s tw o r ks o l v et h en o n - d e t e r m i n a t e d p r o b l e mb y m a s t e r - s l a v ea r c h i t e c t u r e 北京邮电大学博士学位论文 略缩词 英文缩写 c c c c v c d i c d s c i c l c o i c o p c r g c r l d s s a d c e w e e t o m g t s i c l 1 s m t c m s g n g o s s r c s i d s i s s c s t c t m f t c t d c t r m t r a t w f c x y 玉_ e 略缩词 英文全拼 c o n t r o l l e dc o m p o n e n t c o m m o nc o m m u n i c a t i o nv e h i c l e c o n t r a c td e f i n e di n t e r f a c e s c e n t e rd a t as t r u c t u r e c o n t r a c ti n v o c a t i o n c o m m u n i c a t i o nl i n k c o r eo f i n t e r p r e t e r c o m m u n i e a t i o no f p o i n t c o m p l i a n c er e p o r tg e n e r a t i o n c o m p o n e n tr e 西s t r a l i o na n dl o o k u p d o m a i n s p e c i f i cs o f t w r e a m h i t e e t u r e d i s c o v e r e dc o m p o n e n t e x t e r n a l i z e dw o r k f l o we n g i n e e n h a n c e dt e l e c o m o p e r a t i o n sm 印 g l o b a lt e s ts e q u e n c e i n t e r f a c ec o m p o n e n t l o c a l r e s ts e q u e d a c e m a j o r t e s tc o m p o n e n t m e s s a g e n e x tg e n e r a t i o n o p e r a t i o ns y s t e m a n d s o f t w a r e r e g i s t e r e dc o m p o n e n t s h a r e di n f o r m a t i o n d a t am o d e l s h a r e di n f o r m a t i o ns p e c i f i c a t i o n s u b s t a n t i v ec o m p o n e n t s p e c i a lt e s tc o m p o n e n t t e l e c o m m u n i c a t i o n m a n a g e m e n t f o r u m t e s tc o m p o n e n t t e s td a t ac o l l e c t t e s tr e s o u r c em a n a g m e n t t e s tr e n a n a l y z e t e s t ,o 删o wc o n 打o i l x i l i e h u ay u y a nz u 1 2 2 - 中文 受控构件 公共通信平台 台约定义接口 中央数据结构 台约调用 通信连接 解释器核心 通信点 一致性报告生成 构件注册与查找 特定领域的软件体系结构 发现构件 外部工作流引擎 增强的电信运营圈 全局测试序列 接口构件 局部测试序列 主测试构件 消息 下一代运营系统与软件 注册构件 共享信息模型 共享信息规范 独立构件 特殊测试构件 电信管理论坛 钡试构件 测试数据收集 测试资源管理 测试结果分析 测试工作流程控制 系列化语言族 北京邮电大学博士学位论文目录 全文用图目录 图1 1n g o s s 组成。2 图1 - 2n g o s s 体系结构3 图】3 集中式测试结构一6 图1 - 4 分布式测试结构6 图1 5 协作式测试结构- 7 图1 - 6 分布式通用测试结构- 8 图2 1 d s s a 应用系统体系结构一1 7 图2 - 2n g o s s 技术体系结构1 8 图2 3n g o s s 测试工作组成元素2 3 图2 4n g o s s 测试系统求精2 5 图3 1n g o s s 测试系统通用体系结构3 2 一 图4 1 黑板风格- 4 4 图4 2 管道- 过滤器风格- 4 6 图4 3 解释器风格- 4 7 图4 - 4n g o s s 通用测试体系结构功能图4 9 图4 5 数据流一5 1 图4 6 消息传递- 5 1 一 图4 7 测试构件( 发送数据) 一5 2 - 图4 - 8 测试构件( 接收数据) 5 3 一 图4 - 9 接口构件( 发送数据) - 5 4 图4 - 1 0 接口构件( 接收数据) 5 4 图4 1 1 测试工作流控制一5 5 图4 1 2 测试资源管理一5 6 图4 1 3 受控构件- 5 6 图4 1 4 负载测试构件( 发送数据) - 5 7 图4 - 1 5 负载测试构件( 接收数据) - 5 7 图4 1 6 测试数据收集一5 8 图4 1 7 测试结果分析一5 8 一 图4 1 8 特殊测试构件j - 5 9 - 图5 - 1n g o s s 一致性测试体系结构一6 4 图5 2 测试资源管理非形式化描述- 6 9 图6 - 1 测试资源管理相关体系结构一8 1 图6 2n g o s s 一致性测试资源组织方式一8 5 - 图6 - 3 测试流程资源组织方式一8 6 - 图6 - 4n g o s s 一致性测试资源管理模型- 8 8 - 图7 1n g o s s 逻辑完备性结果自动分析模型- 9 6 图8 1 进程多值响应造成的不可控制性一1 l o 一 图8 2 主从式测试执行体系结构一1 1 8 ! ! 室! ! 皇奎堂堡主堂位论文 目录 一一 : 全文用表目录 表2 - l n g o s s 测试工作分类2 2 表7 - 1 测试结果文件及其内容说明表一9 7 表7 - 2 一致性事件及相应的比对规则一9 9 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究成果。尽我 所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得北京邮电大学或其他教育机构的学位或证书而使用 过的材料。与我一同工作的同志对奉研究所做的任何贡献均已在论文中作了明确的说明并 表示了谢意。 申请学位论文与资料若有不实之处 本人签名:丛! ! l 本人承担一切相关责任。 日期:趋! 生。2 :圣 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文| ;f 勺规定。即:研究生在校 攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保留并向国家有关部门 或机构送交论文的复印件剩磁盘,允许学位论文被查阅和借阅;学校可以公布学位论文的 全都或部分内客,可以允许采用影印、缩印或其它复制手段保存、汇编学位论文。( 保密的 学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在一年解密后适用本授权书。非保密 论文注释;本学位论文不属于保密范围,适用本授权书。 本人签名: 墨幺! ! j日期:兰竺兰i :至 导师签名 日期 北京邮电大学博士学位论文 面向n g o s s 测试的软件框架研究 第l 章绪论 1 1n g o s s 简介 当前,电信业正在经历一个快速增长和技术迅变的时期。多变和高度竞争的 市场给电信运营商带来巨大压力,要求它们以尽可能低的开发和维护成本不断扩 展所提供的服务的数量和内容。运营支撑系统( o p e r a t i o ns u p p o as y s t e m ,o s s ) 是基于计算机网络及相关应用技术、用以支持电信运营商业务运营的系统。从功 能上讲,o s s 系统涵盖了计费、结算、帐务、业务管理、客服等方面,为电信运 营商的业务组织、管理及市场经营、客户服务工作提供有力的技术支撑。但随着 电信业的高速发展,各种新业务、新技术的不断涌现,要求电信运营商要能迅速 开发和修改服务。然而,目前的运营支撑系统跟不上市场变化的速度,许多运营 支撑系统仅能满足已有需求的系统,想让它们适应变化中的要求,代价是非常昂 贵的。另外,想把原来为个案设计的多个应用综合在一起也是一项耗费极大的工 作。因此,人们需要用一种新的方法来组装支持整个企业的完整系统,把企业各 功能模块综合起来形成一个紧密而灵活的集成系统。此系统必须便于利用软件业 中的技术发展不断地扩展新的功能,并且能把旧的应用平滑转移到新的运营支撑 系统中去。 n g o s s ( n e x tg e n e r a t i o no p e r a t i o ns y s t e ma n ds o f t w a r e ,下一代运营系统及 软件) 1 - 5 是t m f ( t e l e c o m m u n i c a t i o nm a n a g e m e n tf o r u m ,电信管理论坛) 针对 电信业务运营支撑系统的开发、实现和发布而制定的新的体系。目的是定义标准 的数据交换接口和业务集成点,使电信运营过程中的服务提供者、软件供应商、 设备提供商和系统集成商的信息模型和商业流程能够互相映射,从而实现电信运 营过程的自动化。它从系统( 即插即用的规则) 、过程( 企业业务流程模型) 、信 息( 共享核心数据模型) 、产品( 符合n g o s s 规范的实现) 4 个方面保证n g o s s 具备标准化的特点,能够逐步进行演化,并保证n g o s s 的互联和互操作,实现 端到端的管理。 t m f 提出n g o s s 的目的是: 定义下一代业务流程框架,为信息和通信服务行业定义标准的流程; 建立演示该业务方案的参考实现; 创建文档、模型、代码和培训资料库,以支持t m f 成员开发自己的n g o s s 北京邮电大学博士学位论文 面向n g o s s 测试的软件框架研究 构件; 制定n g o s s 行业规范、致性验证方案和开发相应的产品。 n g o s s 的指导思想是建立以构件为基础的分布式系统结构以及一套关键的 系统服务,以支持通信产业所需要的动态商务和运营管理。n g o s s 定义的系统 结构与技术无关,使企业自由选择适合其自身的技术,并能够快速应用今后新出 现的技术。同时,t m f 从业务分析、流程自动化、系统实现及集成等方面建立 了相应规范,用来指导n g o s s 的建设过程。 从不同的角度看,n g o s s 由四个部分组成,如下图所示: 圈1 1n g o s s 组成 业务视图( b u s m e s sv i e w ) - 通过增强的电信运营规划图( e n h a n c e dt e l e e o m o p e r a t i o n sm a p ,简称e t o m ) 来描述需求,对业务流程进行分析和设计; 系统视图( s y s t e mv i e w ) :业务需求经过系统分析与设计,形成解决方案的 分析与设计: 实现视图( i m p l e m e n t a t i o nv i e w ) :根据得到的解决方案实现系统,该系统需 要通过n g o s s 一致性测试才能保证其互联性和互操作性; 运行视图( r u n - t i m ev i e w ) :经过一致性测试的系统,投入实际运行,满足 客户的需求。 从系统体系结构上看,n g o s s 分为基础框架服务,策略服务和商业服务三 北京邮电大学博士学位论文面向n g o s s 钡0 试的软件框架研究 部分。 图1 - 2n g o s s 体系结构 基础框架服务提供最基本的功能,包括n g o s s 构件的通信、注册及互操作 等。这些基本功能被商业服务调用,完成各种业务所需的底层操作; 在商业服务中,n g o s s 构件通过调用基础框架服务实现业务流程中的一个 特定功能,如客户身份验证,用户资料查询等。再由一个外部工作流引擎灵活地 将多个n g o s s 构件组合为各种业务的实现,并对外提供接口,形成一个个完整 的业务流程,如:开户业务,改号业务等; 策略服务主要提供一些整体性的辅助功能。包括安全服务、系统管理服务等。 这些服务的相关配置信息写在文件中,系统通过读取文件实现策略服务提供的辅 助功能。 1 2 n g o s s 测试简介 n g o s s 承担着电信业务的运营支撑任务,是开展电信业务和运营所必需的 支撑平台。因此n g o s s 是否实现了既定的功能,能否承受大量电信用户的并发 请求压力,是否具有灵活的可扩展性和互操作性等都是n g o s s 开发者和使用者 非常关心的问题。为此,在n g o s s 正式投入运行之前,需要对其功能、性能及 与n g o s s 原则的一致性符合程度进行严格的验收钡4 试,本文就是以n g o s s 验 收测试展开研究的。 按照测试的角度不同,n g o s s 测试工作分为三类:功能测试、性能测试和一 致性测试。功能测试主要检验系统是否实现了软件需求规约中的业务要求,麓否 北京邮电大学博士学位论文 面向n g o s s 测试的软件框架研究 否实现电信行业的各项业务;性能测试检验系统在大用户量并发及大规模数据处 理过程中能否达到系统的要求;一致性测试主要检验系统的实现是否符合既定的 n g o s s 原则嘲川,系统不只是能够完成业务功能,而且需要与既定的n g o s s 原 则一致,只有这样,才能使系统具有良好的可扩展性和互操作性。 一致性测试中的n g o s s 原则指各电信运营企业针对具体电信业务需求制定 出的各项业务标准及接口规范,目前t m f 已经针对电信运营制定出一系列的行 业标准,例如t m f 0 5 0 t m f 0 5 3 ,其中t m f 0 5 0 和0 5 0 a 专门针对n g o s s 一致 性测试的原则和范围等作出了规定,同时各个电信运营商也在根据自己的实际情 况细化相应的n g o s s 原则,例如中国联通根据实际业务的需要,在中国联通 统一客户资料信息模型中规定了整个运营支撑系统中的主要共享信息模型,同 时针对业务支撑系统中各个子系统闻消息的格式作出了严格的规定,形成了针对 接口消息的中国联通综合营帐内部接口规范。 从软件测试的方法上讲,测试工作可分为静态测试和动态测试两种方法 5 5 1 5 6 l 。 静态测试一般指模型检验( m o d e lc h e c k i n g ) ,它是对有穷状态系统的一种形 式化确认方法,原理是基于状态搜索的基本思想,通过状态空间搜索来确认系统 是否具有某些性质。即给定一个程序( 系统) p 和规约t ,生成对应于程序( 系 统) 的模型m ,然后证明规约公式掣在模型m 中成立,这样就证明了程序( 系 统) p 满足规约甲。模型检验主要适用于有穷状态系统,优点是完全自动化并且 验证速度快,缺点是状态爆炸河题,即随着所要检验的系统规模的增大,检验算 法所需的时空开销往往呈指数增长。 动态测试指通过实验的方法对系统进行查错,一般的过程是事先根据业务需 要写好若干测试用例,然后在被测系统实际运行时按照测试用例的要求,在系统 的某点给予输入,同时在另一点观察系统的输出,并记录测试结果,最后对测试 结果进行分析,并给出测试结论。 由于n g o s s 是一个较新的课题,针对其技术和业务的研究还在进行中, n g o s s 的体系结构以及相应的测试指标也在不断的扩充和完善,目前针对测试 工作的研究主要是为了满足实际系统建设过程中的测试需求,所以本文主要针对 如何对n g o s s 进行动态测试进行讨论,以后的“测试”一词都默认为动态测试。 北京邮电大学博士学位论文面向n g o s s 测试的软件框架研究 本文的主要目的是要研究一个面向n g o s s 测试的软件框架,能够支持功能、 性能和一致性测试工作,用以快速设计n g o s s 测试系统及指导实际测试工作。 1 3相关工作及面临的问题 由于n g o s s 提出的较晚,所以专门针对n g o s s 钡t 试进行研究的机构比较少, 相关的研究工作也刚刚起步。 1 3 1国外相关研究 t m f 针对n g o s s - - 致性测试成立了一致性测试研究小组,负责研究和制定与 n g o s s - - 致性测试相关的标准和规范。2 0 0 2 年11 月,在其规范t m f 0 5 0v 3 0 及 t m f 0 5 0 a v 3 0 1 3 4 , 3 5 】中定义t n g o s s - - 致性测试的内容和原则,涉及到对公共通 信平台、合约接口和流程控制的要求以及对相关管理域的功能覆盖情况,测试范 围涵盖t m f 0 5 2 、t m f 0 5 3 及g b 9 1 4 中关于n g o s s 的需求、体系结构及系统集成 图方面的要求。但是,这些规范只是从理论上对n g o s s - - 致性测试作出了初步 的整理和总结,尚未见将其应用在实际的系统测试工作上的报导,同时由于该规 范的制定没有考虑n g o s s 在实际建设中的具体情况,所以将其应用于实际的一 致性测试中还需要做许多具体的工作。 针对n g o s s 功能测试,目前尚没有专门的机构进行研究,但由于n g o s s 往 往采用分布式技术实现,所以n g o s s 测试方法可以借鉴分布式系统的测试方法。 关于分布式系统的测试工作,一个研究方向是通过改变测试系统体系结构来 解决分布式测试中的不确定性和平台异构性等问题。在这个方向有一系列的相关 研究成果,分别是集中式、分布式、协作式、有约束的协作式。另外文献【1 4 提 出了一个通用测试体系结构也是按照这个思路研究问题的。 印度的i n d i a ni n s t i t u t eo fs c i e n c e 的电子与通信工程系羽研究了针对分布式系 统的两种测试体系结构:集中式和分布式。 集中式:如图1 3 所示,测试系统( 以下简称t s ) 只提供一个测试器,与被 测系统( 以下简称i u t ) 的多个端口进行消息的交互。 北京邮电大学博士学位论文面向n g o s s 测试的软件框架研究 ; l s ! i j 囤1 - 3 集中式测试结构 在这里,把i u t 分为若干个子系统,每个子系统对外提供一个端口( p o r t ) , 端口之间不直接进行通信,它们的消息经过t s 进行转发。 在测试时,把i u t 看作一个确定的有限状态自动机,然后根据需求和设计文 档得到一个预期的被测系统的输入输出消息序列,称作预期g t s ( g l o b a lt e s t s e q u e n c e ) 。由测试器按照次序向i u t 发送消息或者接收i u t 的返回消息,并将 这些消息按顺序记录下来,得到一个实际g t s 。测试结束后,将两者进行比对, 判断测试结果的正确性。 该方法提出了由i u t 提供出端口,t s 针对每个端口来进行测试的方法,但 是没有考虑分布式系统测试的不确定性问题和被测系统平台异构性问题。 分布式:如图1 - 4 所示,在这种结构下,i u t 提供若干个端口以供测试,t s 也由若干个测试器组成,每个测试器可以接收i u t 所有端口返回的消息,但只 能向某一个特定的端口发送消息,测试器之间不进行通信,端口间也不直接通信, 因此这是一种分布式的测试结构。 i ! 曼一: 圈1 4 分布式测试结构 测试过程是:根据需求和设计文档,得到i u t 的每个端口的预期输入输出消 息序列,称作预期l t s ( l o c a l t e s ts e q u e n c e ) ;各个测试器按照业务要求分别向 i u t 发送和接收消息,并在发送和接收的过程中分别记录本测试器的实际l t s , 然后将两者进行比对,得出测试结论。 北京邮电大学博士学位论文面向n g o s s 测试的软件框架研究 这种分布式测试结构可以解决分布式系统的平台异构性所带来的问题,但同 时也提出了一个新的问题:由于各个测试器之间是不进行直接通信的,而测试系 统与被测系统问的网络延迟和被测系统响应服务的速度都是不可预知的,同时由 于分布式系统中还存在大量进程并发现象,所以在测试过程中会产生不确定性问 题。 协作式:在i n d i a ni n s t i t u t eo fs c i e n c e 的研究基础上,法国u n i v e r s i t yo fp a u 的计算机科学系【9 】明确地将不确定性分为不可控制性和不可观察性问题,并试图 用一种协作式的测试体系结构来解决这些问题。 图1 - 5 协作式测试结构 他们提出的方法是:在分布式测试体系结构的基础上,除了业务所需要的 消息之外,再定义两种协调消息,让测试器之间通过独立于1 u t 的可靠通信信 道交换协作消息,用以区分消息到达的先后顺序。 这种方法对解决分布式测试结构中的不可控制性和的不可观察性问题有了 很大的进步,提出用一些附加的协调消息对测试流程进行控制,但由于没有考虑 测试系统和被测系统之间网络传送协调消息所需要的时间,所以又带来了新的不 确定性问题。 有约束的协作式:加拿大u n i v e r s i t yo f s h e r b r o o k e 的电子与计算机工程系在 协作式测试结构的基础上,提出当且仅当测试系统考虑了特定的时间约束条件 时,才能真正解决分布式系统测试中的不可控制性和不可观察性问题【| 0 - 1 2 。他们 的方法是将协调消息进行详细分类,然后根据系统不确定性发生时的网络传输时 间和系统响应的情况,将这些细分的协调消息安插在各个关键点上,用以严格区 分业务消息之间的顺序。 这种方法虽然从理论上初步解决了分布式系统测试中的不确定性问题,但 是,由于该方法需要确切的得到被测系统的网络传输时间、系统响应时间等指标, 北京邮电大学博士学位论文面向n g o s s 测试的软件框架研究 但这些指标在实际运行的系统中很难被量化的得到,而且这些指标也不会一成不 变,会随着系统业务量的变化而发生变化,因此,这种方法在实际测试工作中的 实用性较差。 分布式通用测试结构:在文献【1 3 】中提出了分布式通用测试结构( 如图1 - 6 所 示) ,该结构提出使用一个主控制器( m a s t e r t e s t c o m p o n e n t ,m t c ) 作为测试 执行的调度模块,由多个测试构件( t e s tc o m p o n e n t ,t c ) 去执行测试任务,同 时在每个测试构件与被测观察点中增加了通信点( c o m m n i c a t i o n o f p o i m ,c o p ) 屏蔽平台的异构性。另外该体系结构也考虑了通用性,增加了一个受控构件 ( c o n t r o l l e dc o m p o n e n t ,c c ) 完成负载信号的生成。测试时 垂m t c 控制整个测 试流程中与被测系统交互消息的顺序,并向i 发出指令,由t c 通过c o p 与被测 系统交互消息。进行性能测试时,m t c 将测试指令发送给c c ,由c c 产生负载信 号,并与被测系统进行交互。 田1 - 6 分布式通用测试结构 上图中的分布式通用测试结构包括如下的构件:( 1 ) 被测实现( i u t ) ,被测 试的分布式系统中部分应用或实现。( 2 ) 接口构件( i c ) ,提供访问i u 丁的接口 构件,如底层服务或内嵌i u t 的应用实现。( 3 ) 主测试构件( m r c ) ,通过协调 其它测试构件或控制观察i u t 行为,做出测试判决的构件。( 3 ) 铡试构件( t c ) , 在m t c 的控制下,执行测试行为的构件。( 4 ) 受控构件( c c ) ,向t c 或s u t 北京邮电大学博士学位论文面向n g o s s 测试的软件框架研究 提供特定数掘的构件,如性能测试中用到的负载生成器( t r g ) 、负载监控器 ( t r m ) 。( 5 ) 通信点( c o p ) ,通信发生点以及通信观察、控制、监听点。( 6 ) 通信联接( c l ) ,描述t c ,i u t 和c c 之间的通信类型( 如同步、异步、主动、 被动) 和通信方向( 单向或双向) ,例如图1 - 6 中的c l l 和c l 4 分别表示单向和 双向通信。 文献i 1 4 1 从测试执行的角度分析了针对分布式系统测试工作的测试软件体系 结构,提出了由m t c 控制t c 完成测试行为,并使用i c 与m t 真正进行交互 的测试执行方式,充分考虑了测试分布式系统时各个观察点上的平台异构性问 题,。但没有分析测试过程中存在的不确定性问题,同时也没有考虑到测试工作 中的各种资源数据的管理以及对测试结果的比对分析过程,因此需要更进一步的 研究才能将其应用到实际的测试工作中。 此外,还有一些研究机构围绕分布式系统测试的不确定性展开研究,例如 i b mt h o m a sj w a t s o nr e s e a r c hc e n t e r 的研究重点是通过录制分布式系统的运行 过程来得到系统执行路径,并通过回放已录制的脚本来帮助测试人员理解和调试 被测系统。他们已经开发出了一个针对分布式系统的录制回放工具o q j a v u 。 该工具能够对用j a v a 编写的在多个j a v a 虚拟机上运行的分布式系统进行录制 回放i s l l g 。他们的工作主要集中于通过对程序的修改,在线程级别对应用系统的 执行进行干预,使之能够按照规定的方式运行。这种方法适用于回归测试。 加拿大的u n i v e r s i t yo f w m d s o t 与i b m t h o m a sj w a t s o nr e s e a r c hc e n t e r 的目 的相同,都是希望通过对程序的修改实现应用系统的确定性执行 1 0 1 。但他们的 区别在于u n i v e r s i t yo fw i n d s o r 是通过分析系统的需求文档和设计文档来获得系 统运行时的控制约束,面i b m t h o m a sj w a t s o n r e s e a r c h c e n t e r 则是借助于录制 系统一次运行的过程来得到系统运行时的控制约束。 另外还有很多其他研究结构,例如捷克的u n i v e r s i t yo f w e s tb o h e m i a 计算机 科学与工程系、澳大利亚的u n i v e r s i t yo f q u e e n s l a n d 软件测试研究中心【1 5 】等都 在如何解决分布式系统测试的不确定性方面开展研究,总的说来,他们用来消除 不确定性常用的方法f 1 6 之1 】是: 首先根据业务的要求定义出测试场景,测试场景= 测试用例啦制约束。 其中有两种得到控制约束的方法: 北京邮电人学博士学位论文面向n g o s s 测试的软件框架研究 记录回放,主要用于回归测试。 通过分析需求文档和设计文档得到控制约束。 然后根据得到的控制约束,在测试时控制程序的运行路径,具体的控制 方法也有两种: 修改源程序的代码,插入相应的控制语句。 通过改变程序的运行环境,对程序的执行路径进行控制。 1 , 3 2国内相关研究 针对分布式系统的测试,南京大学计算机软件新技术国家重点实验室提出了 一个面向分布式程序的测试系统框架t f d s ( t e s ts y s t e mf i - a m e w o r kf o rd i g 哦b u t e d s o f t w a r es y s t e m ) 【2 2 】,并实现了个原型p s e t ( d i s t r i b u t e dp r o g r a ms t r u c t u r ea n d e v e n tt r a c e ,r e v i s e dv e r s i o n ) 。他们提出面向分布式程序的测试工具必须具有一定 的系统结构,用以解决分布式程序在运行时由于并发而产生的不确定性问题,使 测试人员能监控分布进程的运行,主要集中于在分布式系统中如何消除由于程序 并发造成的不确定性问题,但没有针番j n g o s s 的具体特点进行分析。另外,对 于如何实现在异构平台上搭建测试环境,以及怎样产生测试用例所需要的各种格 式的消息没有提及。而且到目前为止,还没有推出成熟的面向分布式程序的测试 工具。不过,它提出测试工具必须具有一定的体系结构以适应软件不断发展的观 点是值得借鉴的。 针对一致性测试,目前国内有一些机构在进

温馨提示

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

评论

0/150

提交评论