(计算机软件与理论专业论文)从elotos自动生成xml格式测试套的设计与实现.pdf_第1页
(计算机软件与理论专业论文)从elotos自动生成xml格式测试套的设计与实现.pdf_第2页
(计算机软件与理论专业论文)从elotos自动生成xml格式测试套的设计与实现.pdf_第3页
(计算机软件与理论专业论文)从elotos自动生成xml格式测试套的设计与实现.pdf_第4页
(计算机软件与理论专业论文)从elotos自动生成xml格式测试套的设计与实现.pdf_第5页
已阅读5页,还剩59页未读 继续免费阅读

(计算机软件与理论专业论文)从elotos自动生成xml格式测试套的设计与实现.pdf.pdf 免费下载

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

文档简介

原创性声明 p l r l lifi l i i l l li ir l i i i ii if y 18 8 7 7 7 7 本人声明:所呈交的论文是本人在导师指导下进行的研究工作及取得的研究成果。除 了文中特别加以标注和致谢中所罗列的内容以外,论文中不包含其他人己经发表或撰写过 的研究成果,也不包含为获得内蒙古大学或其他教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢 意。 学位论文作者签名: 日 期: 指导教师签名:叁垒兰 日期:之t f ! :f 至:堡 在学期间研究成果使用说明书 学位论文作者完全了解内蒙古大学有关保留和使用学位论文的规定,即:内蒙古大学 研究生在校攻读学位期间论文工作的知识产权单位属内蒙古大学。学校有权保留并向国家 有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借阅;学校可以公布学 位论文的全部或部分内容,可以允许采用影印、缩印或其它复制手段保存、汇编学位论文。 作者今后使用涉及在学期问主要研究内容或研究成果,须征得内蒙古大学就读期间导师的 同意;若用于发表论文,版权单位必须署名为内蒙古大学方可投稿或公开发表。 学位论文作者签名: 日期: 指导教师签名:叁鱼譬兰 日期:丞j 望:f 兰:9 盈出龃她矗冽 曼生士一l 茜一棚一拦 内蒙古人学硕十学位论文 从e - l o i o s 自动生成x m l 测试套的设计与实现 摘要 协议测试是协议工程学的重要研究领域之一。其中,协议测试中的一致性 测试是近年来国际上非常关注的、也是发展较快的一个研究领域,它是协议测 试的基础,是提高和保证协议实现质量的有效手段。所谓协议一致性测试就是 用来验证协议实现与相应协议标准的一致性,协议一致性测试过程大致划分为 三个阶段:第一阶段为“测试生成,第二阶段为“测试实现 ,第三阶段 为“测试执行 。测试套的设计约占整个测试活动的6 0 ,其质量直接决定协 议测试的科学性和有效性。本文采用i s o i e c 于2 0 0 1 年颁布的标准形式描述 语言e l o t o s 描述协议,它具有无二义性且能够支持o d p ,适应对复杂大系 统进行分层描述的方法;采用可扩展标记语言x m l 表示测试套,它简单易于 掌握和使用且符合国际标准,并易于测试套的长久保存及重用,本论文主要研 究工作包括: 对e l o t o s 标准进行了深入研究,自动生成了e l o t o s 描述的协议的 有限状态机( f s m ) 。其次对x m l 进行了详细研究,设计了测试套在x m l 文档中的层次结构,并在f s m 上利用d i j k s t r a 算法和启发式u i o 序列生成算 、 法生成了x m l 格式的测试套,利用j a v a 语言设计并实现了基于e l o t o s 描述的协议自动生成x m l 测试套的自动生成软件工具。最后通过对b g p - 4 路 由协议的研究,从e l o t o s 描述的b g p - 4 路由协议自动生成了x m l 测试套。 本 进行测 用本文 关 内蒙占人学硕十学位论文 t h ed e s i g na n di m p l e m e n t a t i o no fa u t o m a t i c a l l y g e n e r a t i n gx m lt e s ts u i t ef r o me l o t o s a b s t r a c t t h ep r o t o c o lt e s t i n gi so n eo ft h ei m p o r t a n tr e s e a r c ha r e a si nt h ep r o t o c o l e n g i n e e r i n g t h ep r o t o c o lc o n f o r m a n c et e s t i n gi s o n er e s e a r c hf i e l dw h i c hi sp a i d m u c ha t t e n t i o ni n t e r n a t i o n a l l yi nr e c e n ty e a r sa n dh a sr a p i dd e v e l o p m e n t s t h e c o n f o r m a n c et e s t i n gi st h eb a s i sf o rp r o t o c o lt e s t i n ga n dt h ee f f e c t i v em e a n st o e n h a n c ea n de n s u r et h ep r o t o c o li m p l e m e n t a t i o n7 sq u a l i t y t h ep r o t o c o lc o n f o r m a n c e t e s t i n g v e r i f i e st h e c o n s i s t e n c y o ft h e p r o t o c o li m p l e m e n t a t i o n w i t ht h e c o r r e s p o n d i n gp r o t o c o ls t a n d a r d ,a n di ti sr o u g h l yd i v i d e di n t ot h r e ep h a s e s :t h ef i r s t p h a s ei s c a l l e dt h e ”t e s tg e n e r a t i o n ,t h es e c o n dp h a s e i sc a l l e dt h e ”t e s t i m p l e m e n t a t i o n ,t h et h i r dp h a s ei sc a l l e dt h e t e s te x e c u t i o n ”t h ed e s i g no f t h et e s t s u i t ea p p r o x i m a t e l yi s6 0 o ft h ee n t i r et e s t i n ga c t i v i t i e s i t 7 sq u a l i t yd i r e c t l y d e t e r m i n e st h es c i e n t i f i cn a t u r ea n dv a l i d i t yo f t h ep r o t o c o lt e s t i n g i nt h i sp a p e rf i l es t a n d a r df o r m a ld e s c r i p t i o nl a n g u a g ee l o t o si su s e dt o d e s c r i b et h ep r o t o c o la n di ti sp r o m u l g a t e db yi s o i e ci n2 0 0 t y e a r i th a s u n a m b i g u o u sf e a t u r e a n di sa b l et o s u p p o r to d p , a d a p t st o t h eh i e r a r c h i c a l d e s c r i p t i o nm e t h o dt oc o m p l e xl a r g e - s c a l es y s t e m jt h ee x t e n s i b l em a r k u pl a n g u a g e x m li sa d o p t e dt od e s c r i b et h et e s ts u i t e ,i ti ss i m p l e ,e a s yt om a s t e ra n du s ea n d a c c o r d w i t hi n t e r n a t i o n a ls t a n d a r d s ,a n di th a sa d v a n t a g e sa b o u tt h el o n g - t e r m ! i l 从e l o t o s 自动t 成x m l 测试套的设计与实现 p r e s e r v a t i o na n dr e u s eo ft h et e s t s u i t e t h i sp a p e ri n c l u d e st h ef o l l o w i n ga s p e c t s : f i r s t l y , t h i sp a p e rh a s c o n d u c t e dd e e pr e s e a r c ht ot h ee - l o t o ss t a n d a r da n d a u t o m a t i c a l l yg e n e r a t e dt h ef i n i t es t a t em a c h i n e f r o me - l o t o st e x tw h i c hd e s c r i b e s t h ep r o t o c 0 1 s e c o n d l y , t h i sp a p e rh a sc o n d u c t e dad e t a i l e ds t u d yo nx m l ,d e s i g n e d t h et e s ts u i t eh i e r a r c h yi nt h ex m l d o c u m e n t ,b yu s i n gt h ed i j k s t r aa l g o r i t h ma n d a h e u r i s t i ca l g o r i t h mf o ru i os e q u e n c eg e n e r a t i o no nt h ef i n i t es t a t em a c h i n et h i sp a p e r g e n e r a t e dt h ex m l f o r m a tt e s ts u i t e ,u s i n gj a v al a n g u a g et h i sp a p e rd e s i g n e da n d i m p l e m e n t e dt h es o f t w a r et o o l sw h i c ha u t o m a t i c a l l yg e n e r a t e dt h ex m l t e s ts u i t e b a s e do ne l o t o sd e s c r i p t i o no fp r o t o c 0 1 f i n a l l y , t h r o u g ht h es t u d yo fb g p 4 r o u t i n gp r o t o c o la u t o m a t i c a l l yt h i sp a p e rg e n e r a t e dt h ex m l t e s ts u i t ef r o mt h e e l o f o sd e s c r i p t i o no fb g p 一4r o u t i n gp r o t o c 0 1 t h ela s ts e c t i o no ft h i sp a p e rt h r o u g ht h ew h o l ec o m p a r i s o nw i t ht h et e s ts e t 。 w h i c hi sp r o v i d e db yi o ll a b o r a t o r yf o rb g p 一4 7 sf s ma n dc o m p a r a t i v ea n a l y s i st o o n er a n d o mt e s tc a s e ,i ti sa c h i e v e dt h a to nt h es a m et e s tp u r p o s et h et e s tc a s e g e n e r a t e df r o mt h i ss o f t w a r et o o le x p r e s s t h es a m em e a n i n gw i t ht h et e s tc a s e d e s i g n e db yi o ll a b o r a t o r y k e y w o r d s :p r o t o c o lc o n f o r m a n c et e s t i n g ,e l o t o s ,x m l ,a b s t r a c tt e s t s u i t e ,b g p - 4r o u t i n gp r o t o c o l 内蒙古人学硕十学何论文 目录 从e - l o t o s 自动生成x m l 测试套的设计与实现i 摘要:i 目录! j v 图表目录一v i i 第一章绪论l 1 1 选题背景1 1 2 国内外研究现状2 1 3 论文结构3 第二章协议一致性测试技术4 2 1 协议测试的类型4 2 2 协议一致性测试过程5 2 3 协议测试套6 2 4 一致性测试体系结构7 , 第三章研究基础一1 0 3 1 形式描述技术1 0 3 2 形式化描述语言e l o t o s 1 l 3 2 1e - l o t o $ 的基础语言1 2 3 2 2e - l o t o s 的模块语言1 4 3 3 可扩展标记语言x m l 简介:1 5 3 3 1x m i 。语言的优点1 5 3 3 2x m l 的相关技术1 6 3 3 3d o ma p i 核心接口介绍1 7 第四章测试套自动生成工具的设计与实现1 9 4 1 测试套自动生成工具框架_ 。:1 9 4 2f s m 简介2 0 4 3f s m 的存储结构2 0 4 4e l o t o s 文本的解析2 2 4 5 生成f s m j 2 4 4 5 1 绘制f s m 中的状态2 4 4 5 2 得到变迁弧坐标值二2 7 4 5 3 绘制f s m 中的变迁弧2 8 v 从e l o t o s 门动生成x m l 测试套的设计与实现 4 6 测试序列的生成二i 2 9 4 6 1 前导序列的生成2 9 4 6 2 测试变迁的生成2 9 4 6 3u 1 0 序列的生成2 9 4 7x m l 保存测试套3 1 4 7 1 测试套在x m l 文档中的结构3 l 4 7 2 测试序列转化为d o m 模型3 3 4 7 3d o m 模型转化为x m l 文档3 4 第五章b g p 一4 协议的测试套生成3 8 5 1b g p - 4 协议3 8 5 2b g p - 4 的e l o t o s 描述3 9 5 3b g p - 4 协议f s m 生成4 1 5 4b g p - 4 协议的x m l 测试套4 3 5 5 生成测试套的分析与比较4 4 第六章总结与展望4 6 6 1 本文主要工作4 6 6 2 对未来的展望4 6 参考文献4 7 附录b ( ;p - 4f s m 在0 p e n s e n t 状态下的x m l 测试例4 9 致谢5 4 攻读学位期间发表的学术论文5 5 v i 内蒙古人学硕十学位论文 ,p 图表目录 图2 1 一致性测试体系结构7 图2 2 协议一致性测试方法9 表3 1e l o t o s 行为表达式1 2 图3 1d o m 的工作方式【i 引。1 7 图4 1e l o t o s 生成x m l 测试套框架1 9 图4 2 从e l o t o s 自动生成x m l 测试例的用户界面2 4 图4 3f s m 图状态分布图l 2 5 图4 4f s m 图状态分布图2 2 6 图4 5f s m 图状态分布图3 2 6 图4 6f s m 图状态分布图4 2 7 图4 7x m l 文件中测试套的组织结构3 2 表4 1x m l 文件中测试套元素的含义一3 2 图4 8x m l 测试套生成界面3 6 图5 1b g p m 协议生成的f s m 图一4 2 表5 1 变迁t ( o p e n s e n t ,b g p o p e n ) 产生的测试例4 3 图5 2 变迁t ( o p e n s e n t ,b g p o p e n ) 的x m l 测试例4 3 表5 2 对b g p - 4f s m 生成测试例的统计4 4 图5 3i o l 设计的变迁t ( o p e n s e n t ,b g p o o e n ) 的x m l 测试例4 5 图附录l 测试o p e n s e n t 状态下对事件m a n u a l s t o p 的响应:4 9 图附录2 测试o p e n s e n t 状态下对事件a u t o m a t i c s t o p 的响应4 9 图附录3 测试o p e n s e n t 状态下对事件h o l d t i m e re x p i r e s 的响应5 0 图附录4 测试o p e n s e n t 状态下对:事件t c p c o n n e c t i o n f a i l s 的响应5 0 图附录5 测试o p e n s e n t 状态下对事件b g p o p e n 的响应5 l 图附录6 测试o p e n s e n t 状态下对事件b g p h d e r e 打的响应5 1 图附录7 测试o p e i l s e n t 状态下对事件b g p o p e n m s g e r r 的响应5 2 图附录8 测试o p e n s e n t 状态下对事件o p e n c o l l i s i o n d u m p 的响应5 2 图附录9 测试o p e n s e n t 状态下对事件n o t i f m s g v e r e r r 的响应5 3 图附录1 0 测试o p e n s e n t 状态下对事件o t h e r w i s e 的响应。5 3 v h 内蒙占人学硕 = 学f 江论文 第一章绪论 1 1 选题背景 计算机网络技术的广泛应用,极大地推动了通讯软件的发展,网络规模剧增、结构复 杂,对网络协议的开发带来了许多困难。协议是为计算机系统之问交换信息而建立的规则 集合。协议说明是描述协议的接口和结构方式的一个详细文件。从协议说明得到的实现称 为协议实现。由于协议说明目前基本上是使用自然语言描述的,实现者对于协议的不同理 解会导致不同的协议实现,也就是从一个协议说明得到许多不同的协议实现,由此会造成 一个标准化的协议并不能确保由该协议得到的实现之间能够成功地进行通信,这就需要测 试每个协议实现与协议说明的一致性,即进行协议一致性测试。协议一致性测试的目的是 为了验证计算机网络通信协议的实现与相应的协议标准之间的一致性问题,是确保各种计 算机系统正确互连和互操作的关键【i j 。 由于协议一般都比较复杂,为了清晰、准确地给出协议说明,往往采用形式化方法描 述协议说明。形式化方法一般需要形式描述语言的支持,l o f o s ( l a n g u a g eo ft e m p o r a l o r d e r i n gs p e c i f i c a t i o n ) 是形式化描述语言其中之一,它将一个系统看作是由多个相互作用 的子进程组成的进程,它能够很好的描述分布、并发和信息处理系统,抽象级别较高,但 可读性差,无异步通信机制【2 】。i s o 和i e c 的联合技术委员会j t c 对l o t o s 进行了改进, 提出了e l o t o s ( e n h a n c e m e n t st ol o t o s ) ,即增强的l o t o s ,它是i s o 于2 0 0 1 年确认 并颁布的l o t o s 的增强版,它对语言的可执行性、用户友好的数据类型、时间特性、异常 处理、面向对象等方面进行了增强,它能有效地描述时间和随机事件的发生,e l o t o s 在 描述实时性及不确定性等方面有了更强的描述能力,能够严密地描述协议的逻辑结构和协 议的时序性,而且还引入了模块语言,使e l o t o s 说明具有封装性、易于实现代码重用和 转换为计算机语言【3 】【4 】。 x m l ( e x t e n s i b l em a r k u pl a n g u a g e ) 是万维网联盟w 3 c ( w o r l dw i d ew e bc o n s o r t i u m ) 制定的s g m l ( s t a n d a r dg e n e r a l i z e dm a r k u pl a n g u a g e ) - - 个子集,它具有层次结构化、可扩 展性、自描述性等显著特点。x m l 可以将数据表示为具有层次结构的结构化文本形式;使 用x m l 可以创建新的标记来使用,用x m l 描述的测试套结构可以根据用户要求来设计; x m l 是一种元标记语言,用户可以自己定义标记的名称,从而使得x m l 的数据具有了自 从e l o t o s j 动生成x m l 测试套f 勺设计与实现 我描述性。 、, 协议一致性测试的研究工作主要包括三方面:测试生成、测试实现和测试执行。测试 生成技术的研究主要通过协议的形式化描述自动或半自动地生成一致性测试套( 测试例的 集合) 。在协议一致性测试过程中,测试套的生成决定了测试的质量,是测试执行的基础, 是整个协议测试的核心。测试实现过程是由实现特定测试集的执行方法组成。测试执行为 测试例的运行提供环境,它通过执行测试集,并对协议实现的外部行为进行观察,从而得 到协议实现与协议说明是否一致的判决。目前对协议测试的研究主要集中于测试系统方面, 而测试例生成的研究相对欠缺,对协议测试例的自动生成方法的研究在国内更是寥寥无几。 因此,测试例自动生成方面值得进一步探索与研究i s ,而且测试例的设计约占测试活动的 6 0 ,其质量直接影响协议测试的质量和效果。 本论文通过对形式描述语言e l o t o s 标准和x m l 的详细研究,利用j a v a 语言自动 生成了e l o t o s 描述的协议有限状念机,并设计了测试套在x m l 文档中的层次结构,实 现了基于e l o t o s 协议的描述到自动生成x m l 测试套的自动生成软件工具,并通过对 b g p - 4 路由协议的研究,从e l o t o s 描述的b g p - 4 路由协议自动生成了x m l 测试套。 1 2 国内外研究现状 美国新罕布什尔大学于1 9 8 8 年开始创建互操作实验室( i o l ) ,目前已能为7 0 多个厂商 提拱互操作性和一致性方面的测试。其测试的产品包括:a t m 、快速以太网( i o o b a s e 、 、和、网络管理、和无线网_。t)fddif i b r ec h a n n e li n t e m e tp r o t o e o l ( i p v 6 o s p f ) t o k e nr i n g i o l 实验室的主要目的有两个:一是为计算机厂商提供测试服务;二是为本校提供教育和训练机 会。i o l 实验室的t c p i p 协议族的产品并不多,主要有o s p f 和i p v 6 。1 9 9 7 年,i o l 又提 出了一项新的计划,技术验证计划1 、伊( t e c h n o l o g y v e r i f i c a t i o np r o g r a m ) ,其中心思想是为 新的通信范例或者说新的通信技术提供一套完整的度量手段来验证该范例或技术的成熟性, 从而避免有些产品在技术成熟之前就被投放到市场。当某个通信范例或技术符合计划中所列 出的一系列标准或尺度之后,便授予该范例一个“以验证”状态,类似于为产品盖一个“合 格”的印记,表示该范例或该技术已经比较成熟,能够应用于市场。 美国g a r l a n d 的应用计算机技术公司a c t ( a p p l i e dc o m p u t e rt e c h n o l o g y ) 于1 9 8 0 年开始 从事有关的测试活动。a c t 公司主要从事基于p c 的s n a 和t c p i p 测试活动,从事的测试 项目主要有一致性测试和验证、负载测试。所有的测试例和测试工具都用p a s c a l 语言书写。它 2 内蒙占人学硕f :学位论文 使用的是程序执行的方法而不是基于形式化方法的解释执行机制,程序化方法的缺点是可修 改性差、工作量大,并且没有形式化方法来保证其正确性。 清华大学计算机系l e t l a b 实验室8 0 年代开始7 0 s i 协议方面的研究工作,“九五公关项 目中协议测试被作为主要的研究方向之一,n e t l a b 实验室又进行了“协议集成测试系统p i t s ” 的研究工作,p i t s 是一个可以同时提供一致性测试、互操作测试和性能测试的集成测试系统。 目l j 该实验室已经开发- j t c p 、u d p 、i p 、i c m p 、s m t p 等t c p i p 协议簇的多个协议测试集, 同时还开发出了r i p 、o s p f 、b g p 等路由协议的测试集。该网络实验室经过多年的研究,在 形式化描述和路由测试方面有较高的水平,主要完成了协议一致性测试和互操作测试管理、 主动测试和被动测试等方面的研究。 八十年代早期,欧洲的许多研究机构开始在建立标准化的协议一致性测试活动方面进行 合作,其目的是制定一个在o s i 框架内进行协议一致性测试的指导标准。最初的参与者包括 法国巴黎的a d i 、德国d a r m s t a d t 的g m d 和英国的国家物理实验室n p l 。这些研究机构在这 之前曾分别关注子一致性测试的不同方面的研究。例如a d i 设计并实现了一台x 2 5 协议测 试仪;g m d 开发了一种针对i s o 会话层协议进行被动监控和错误检测的分析工具;而n p l 则实现了一个用来对网络服务进行测试的测试系统。美国的国家标准和技术局n i s t 由于成 功地研制了i s o 传输层第四类协议的测试系统,所以后来也被邀请参加了这一合作项目1 6 j 。 内蒙古大学计算机学院在国内协议测试领域中十分活跃,在形式化描述产生协议测试集 方法、控制流和数据流相结合的测试例生成方法、对图形e l o t o s 的研究、从e l o t o s 自动 产生t r c n 3 测试套、基于t t c n 3 的一致性测试、基于x m l 描述测试套的一致性测试系统的 实现等方面取得了显著成绩,目前x m l 描述测试套主要采用手工生成。 1 3 论文结构 本文安排如下: 第一部分介绍协议一致性测试技术; 第二部分介绍x m l 语言及e l o t o s 形式描述语言; 第三部分介绍基于e l o t o s 自动生成x m l 测试套的设计与实现;、 第四部分介绍工具对b g p - 4 协议的应用; 第五部分是总结和将来的工作; 第六部分是参考文献与感谢部分。 第二章协议一致性测试技术 在计算机网络的发展历程中,协议一直处于核心地位,它是计算机网络和分佰式系统 中各种通信实体之间互相交换信息所必须遵守的一组规则。1 9 8 4 年,国际标准化组织i s o 提 出了开放式系统互连( i s o o s i ) 参考模型。1 9 9 3 年1 月1 同,t c p i p 被宣布为i n t e r a c t 上 惟一正式的协议,因而为i n t e m e t 的发展铺平了道路。 协议软件作为软件的一种特殊形式,自2 0 世纪8 0 年代以来,其开发和检测方法已经得 到了快速的发展,并形成了一个崭新的学科一协议工程学。它的研究范围包括:协议说明 ( p r o t o c o ls p e c i f i c a t i o n ) 、协议证实( p r o t o c o lv a l i d a t i o n ) 、协议验证( p r o t o c o lv e r i f i c a t i o n ) 、 协议综合( p r o t o c o ls y s t h e s i s ) 、协议转换( p r o t o c o lc o n v e r s i o n ) 、协议性能分析( p r o t o c o l p e r f o r m a n c ea n a l y s i s ) 、协议主动实现( p r o t o c o la u t o m a t i ci m p l e r n e n t a t i o n ) 和协议测试 ( p r o t o c o lt e s t i n g ) 。 目前的网络协议多数是自然语言描述的,实现者对于协议文本的不同理解以及实现过程 中的非形式化因素都会导致不同的实现,有时甚至是错误的实现。即便协议实现正确,也不 能保证不同的实现彼此之间能够准确无误的通信,而且同一协议的不同实现,其性能也有差 别。在这种情况下,需要一种有效的方法来对协议实现进行评价,这就是“协议测试”。 随着计算机网络的普及和网络需求的增多,计算机网络协议越来越复杂,越来越庞大, 协议实现不仅仅需要功能正确完善,能够互通,而且要求具有良好盼性能,因此协议的实现 和开发越来越复杂。为了保证质量,协议测试是一个必须而且十分重要的手段。目前的协议 测试已经不仅仅是产品开发研制过程中一个简单的检测支持过程,而已发展称为计算机网络 技术的一个重要分支。对协议测试技术的研究将直接影响到计算机网络技术的进步和世界网 络市场的竞争与发展。所以很多国家都投入了大量的人力、物力从事协议测试的研究工作。 例如英国的国家物理实验室( n p l ) 、法国国家通信研究中心、德国国家通信研究局( g m d ) 、 美国国家标准化研究局、美国新罕布什尔大学互操作研究试验室、中国清华大学计算机科学 与技术系的计算机网络与协议测试实验室等单位都在为这个领域投入了大量的研究力量【7 】。 2 1 协议测试的类型 协议测试是在软件测试基础上发展起来的。根据对被测软件的控制观察方式,软件测试 4 内蒙占人z 硕卜。肇何论文 方法分为三种:白盒测试、黑盒测试和灰盒测试。协议测试是一种黑盒测试,它按照协议标 准,通过控制观察被测协议实现的外部行为对其进行评价。在黑盒测试中,测试者把被测 实现看成一个黑盒,即完全不考虑协议实现的内部结构和内部特性,仅仅关心于寻找使被测 实现未按说明运行的情况,并且仅仅按协议的说明导出测试数据,也就是说,不利用有关协 议内部结构的信息。白盒测试允许人们检查协议的内部结构,测试者从检查协议的逻辑着手, 得出测试数据。 目前,协议测试分成三个方面进行研究:一致性测试( c o n f o r m a n c et e s t i n g ) 、互操作性 测试( i n t c r o p c r a b i l i t yt e s t i n g ) 和性能测试( p e r f o r m a n c et e s t i n g ) 。:一致性测试主要测试协议 实现是否严格遵循相应的协议描述;互操作性测试关注的是对于同一个协议标准,不同协议 实现之间的互连互通问题;性能测试是用实验的方法来观察被测防议实现的各种性能参数, 如吞吐量和传输延迟等,其结果往往与输入负载有关。在上述三个方面中,一致性测试开展 的最早,也形成了很多有价值的成果。1 9 9 1 年,i s o 制定的国际标准i s 0 9 6 4 b “o s i 协 议一致性测试的方法和框架 用自然语言描述了基于o s i 七层参考模型的协议测试过程、概 念和方法。但是,随着计算机网络技术的不断发展,新的协议越来越复杂,协议一致性测试 工作遇到了很多团难。在这个过程中,大量形式化方法被引进到协议测试研究领域中来。1 9 9 5 年,i s o 推出了甜一致性测试中的形式化方法 国际标准,对协议一致性测试过程各个阶段 使用的形式化方法进行了说明。但由于协议一致性测试本身的复杂性,该标准一直停留在草 案阶段。对于互操作测试的研究技术基本上是从一致性测试继承过来的。由于对网络应用的 需求急剧增长,网络性能已经变得与功能同等重要了。协议实现性能测试的研究工作正在进 行中。在进行大量的测试实践的同时,理论研究也正在起步。 实际上,测试是通过试验的方法找出错误的过程。在测试过程中,检查协议实现是否做 了要做的事仅是成功的一半,另二半是要看它是否做了不要它做的事。由于对一个系统进行 无穷尽的测试是不现实的,所以测试并不能保证一个协议实现的完全正确性,即测试只能表 明实现“存在错误”,而不能证明实现是“正确的 【7 】【引。 一“ 2 2 协议一致性测试过程 检验一个协议实现是否与它的说明相一致的方法有两种:一种是验证、另一种是一致性 测试。如果实现的内部结构是已知的,就应用验证技术;如果实现是以“黑盒”形式给出的, 只能测试它的可观察行为,这时就应用一致性测试。一致性测试时,将信号输入被测协议实 5 从e l 0 1 o s 亡1 动生成x m l 测试套的设汁与实现 一 现i u t ( i m p l e m e n t a t i o nu n d e r t e s t ) ,接收输出信号,然后将它与预期的输出进行比较。输入 和预期的输出在测试套中描述,测试套由几组测试例构成,对一个独立功能或需求测试所规 定的动作序列称为一个测试例,若干相关的测试例组成一个测试组,若干测试组组成一个测 试套。因此,测试例是以组的形式组合在一起构成测试套。显然,测试套的结构是层次化的, 测试套是所有测试例的集合。对测试例的执行得出一个测试判定。最终从测试判定总结出一 致性关系。也就是说,协议一致性测试过程大致可以分为三个阶段:第一阶段为给定说明产 生有限的抽象测试套,称为“测试生成”,抽象测试套是为测试所有该协议的实现设计的测 试套。第二阶段把测试套应用于一个实现,称为“测试实现”,在这一阶段,抽象测试套中的 抽象测试例转变为可以在一个实际测试设备或测试系统上执行的测试例。第三阶段为“测试 执行”,运行可执行的测试套,并对被测协议实现i u t 的外部行为响应进行观察,最终可以得 到一个关于i u t 相对于协议说明是否一致的判定,并将测试执行的结果记录在协议一致性测 试报告中【引。 2 3 协议测试套 测试生成是一致性测试的第一个阶段,其目的是从协议描述中生成出一套独立于协议实 现,用严格定义的测试表示语言描述的,且适合于被标准化,并能对协议的各个方面进行测 试的测试套。随着协议一致性测试活动的开展,测试套的自动生成成为一种迫切的需要,如 何高效、准确、完整地生成测试套成为一个重要的挑战。测试套可以说是一致性测试的基石, 一致性测试的所有活动都从测试套起步。每一个测试套都有固定的层次,依次是测试组、测 试例、测试步、测试事件。其中最关键的一级是测试例。每一个测试例都有自己的测试目标, 并根据i u t 的响应对其行为做出判决得出结果1 6 j 。 测试套是描述协议一致性测试数据的,它在整个一致性测试过程中起着极其重要的作用。 有许多方法可以用来描述测试套,例如t i c n 、x m l 、树型表示法和表型表示法等等。这些 方法有着各自的优缺点,例如t t c n 是一种专门描述测试套的半形式化的描述语言,具有标准 化以及通用性等优点,但是由于其标准定义极其繁琐,在设计删测试套时,一般的测试人 员很难掌握,需要很长一段时间的培训,而x m l 是一种把数据表示为文本字符串的语言,它 是一种跨平台的语言,可以使用任何文本编辑工具来编辑x m l 文件,用x m l 描述的测试套 结构简单,方便浏览、编辑和修改等。x m l 与t i c n 测试套描述方法具体比较如下p j : ( 1 ) t f c n 和x m l 都采用层次结构描述协议测试套。 ( 2 ) x m l 是用标记描述的语言,它的标记名称和关系可以自由定义,即根据x m l 语 6 内蒙占人学硕十学位论文 法可以定义用户特殊用途的标记集合形成一个全新的符号化语言。而t t c n 能表示的内容是 己定义好的,不能扩展。_ ( 3 ) 在x m l 中文件是出一个个称之为元素的部件构成、使用标记来描述元素;由于使 用了标记的描述方法,可以保持原数据的意思进而可以保持不同系统之间数据交换的灵活性。 而用t t c n 书写的测试例文件由于其内容复杂,很难知道其标记所对应的内容在表中的位置 和含义。 ( 4 ) 由于x m l 是以文本形式描述的,所以适合用各种文本编辑器来编辑x m l 文档, 同样由于使用文本来描述内容,可以跨越不同平台进行数据交换;而用t r c n 书写的测试套 文件需要专用工具来编辑。 o ( 5 ) 保存测试例的m x l 文件结构简单,可以直接在m x l 文件中修改测试套的内容,而 t r c n 功能强大、测试套结构严谨、内容相互关联,直接修改非常困难,容易出错,必须借助 相应的软件工具来修改。 2 4 一致性测试体系结构 在一致性测试中,i u t 是一个o s i 协议实体,i u t 所在的系统称为被测试系统s u t ( s y s t e m u n d e rt e s t ) 。一个概念上的一致性测试体系机构如图2 1 所示。 t c j,_ _ - i 叫i u p 。 i p d v j l 工 、。 盖卜蔓i i l 一竺下k p c 1 1 w 1 r 。u n d e r l y i n gs e r v i c e r 图2 1 一致性测试体系结构 f i g u r e2 1t h es t r u c t u r eo fc o n f o r m a n c et e s t i n g i u t 有一个上层测试u t ( u p p e rt e

温馨提示

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

评论

0/150

提交评论