(通信与信息系统专业论文)网络通信软件协议一致性测试方法研究.pdf_第1页
(通信与信息系统专业论文)网络通信软件协议一致性测试方法研究.pdf_第2页
(通信与信息系统专业论文)网络通信软件协议一致性测试方法研究.pdf_第3页
(通信与信息系统专业论文)网络通信软件协议一致性测试方法研究.pdf_第4页
(通信与信息系统专业论文)网络通信软件协议一致性测试方法研究.pdf_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

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

文档简介

,。 。 。也,jj11 1 一 南京邮电大学 硕士学位论文摘要 学科、专业:通信与信息系统 研究方向:i p 和宽带网络技术 作者:郭任怡 指导教师:孟旭东 题目:网络通信软件协议一致性测试方法研究 英文题目:t h er e s e a r c ho np r o t o c o lc o n f o r m a n c et e s t i n go fn e t w o r k c o m m u n i c a t i o ns o f t w a r e 主题词: 协议测试;一致性测试;t t c n ;t e l e l o g i c t a u k e y w o r d s :p r o t o c o lt e s t i n g ;p r o t o c o lc o n f o r m a n c et e s t i n g ;t t c n ;t e l e l o g i c t a u 南京邮电大学硕士研究生学位论文摘要 摘要 随着网络技术的蓬勃发展,服务于网络的各个层面的通信协议也被制定出来。尽管协 议标准的语法是规范的,然而,在业务应用中,协议的语义和语用很多地方是用自然语言 描述的,还无法实现从规范到代码的全自动的转换,不同厂商的实现可能会因为错误的理 解而造成协议实现错误,进而系统运行失败,即使是有严格规范的接口,在具体实现时出 现错误也是经常发生的。为确保协议实现的正确性和有效性,协议测试就显得尤为重要。 协议一致性测试是测试被测协议实现与协议规范要求的一致性,是协议测试的基础。 一个协议实现能否通过一致性测试是它能否与其他实现成功进行交互的重要保障。而协议 测试集自动生成理论则极大的简化了协议测试的工作,缩短了协议的开发时间。 论文首先阐述了目前的通信软件的测试理论和相关技术,着重对通信协议一致性测试 方法展开研究,介绍了一致性测试的基本概念,测试结构和过程等,接着对多种协议的形 式化描述方法和测试套自动生成方法展开调研,并且进行了分析和比较;在此基础上,对 流行的t e l e l o g i c t a us d l a n dt t c ns u i t e4 4 仿真软件环境进行了深入的分析,研究该软件 环境是否能够符合协议一致性测试的要求,是否满足e t s i 测试规范,论文给出了肯定的 结伦;最后,论文描述了在此环境下进行的工作,使用s d l 对i m s 中基于s i p 的会话处 理过程进行系统建模,并利用上述建立的模型,生成了基于t y c n 的抽象测试套,最后使 用该测试套对被测系统进行了一致性测试。 关键词:协议测试;一致性测试;t t c n ;t e l e l o g i e t a u 南京邮电大学硕士研究生学位论文 a b s t r a c t a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fn e t w o r kt e c h n o l o g y , c o m m u n i c a t i o n sp r o t o c o lw h i c hs e r v e s f o rd i f f e r e n tl a y e r so fn e t w o r kh a sb e e nw o r k e do u t a l t h o u g ht h eg r a m m a ro fp r o t o c o ls t a n d a r d i sn o r m a t i v e ,i nt h ea p p l i c a t i o no fs e r v i c e ,t h es e m a n t i c so fp r o t o c o l si sd e s c r i b e di nn a t u r a l l a n g u a g e s ,a n dt h ea u t o m a t i ct r a n s l a t i o no fs t a n d a r di n t oc o d ec a nn o tb er e a l i z e d d i f f e r e n t m a n u f a c t u r e r sm i g h tm a k em i s t a k e si nt h e p r o t o c o li m p l e m e n t a t i o n b e c a u s eo ft h e m i s u n d e r s t a n d i n g ,a n dt h es y s t e mm a y r a l lf a i l e d e v e nt h e r ei ss t r i c ta n dn o r m a t i v ei n t e r f a c e , t h ee r r o l 篙 a r ec o m m o n i no r d e rt oe n s u r et h ec o r r e c t n e s sa n de f f e c t i v e n e s so fp r o t o c o l i m p l e m e n t a t i o n ,p r o t o c o lt e s t i n gi sp a r t i c u l a r l yi m p o r t a n t t h e p r o t o c o lc o n f o r m a n c et e s ti st ot e s tt h ec o n s i s t e n c yo ft h ep r o t o c o li m p l e m e n t a t i o na n d t h ep r o t o c o ls t a n d a r d ,a n di ti st h eb a s i so fp r o t o c o lt e s t i n g w h e t h e rac e r t a i np r o t o c o lc a np a s s t h et e s ti sa ni m p o r t a n tg u a r a n t e e ,w h i c hd e c i d e sw h e t h e rt h ec o m m u n i c a t i o nb e t w e e nt h e i m p l e m e n t a t i o no ft l l i sp r o t o c o la n do t h e ri m p l e m e n t a t i o n sc a nd os u c c e s s f u l l y t h et h e o r yt h a t t h ep r o t o c o lt e s t i n gs e tc a na u t o m a t i c a l l yg e n e r a t ei sg r e a t l ys i m p l i f i e st h ew o r k i n go fp r o t o c o l t e s t i n ga n ds h o r t e n t h ed e v e l o p m e n tt i m eo ft h ep r o t o c 0 1 i nt h i st h e s i s ,t h et h e o r yo fc o m m u n i c a t i o ns o f t w a r et e s ta n di n t e r r e l a t e dt e c h n o l o g i e sw e r e i n t r o d u c e d t h er e s e a r c h e sw e r em a i n l yf o c u s e do nt h ep r o t o c o lc o n f o r m a n c et e s t t h e nt h e b a s i cc o n c e p t ,t h et e s t i n gs t r u c t u r ea n dp r o c e d u r e sw e r ea l s oi n t r o d u c e di nt h i st h e s i s t h ef o r m a l d e s c r i p t i o nm e t h o do fm a n yp r o t o c o l sa n dt h ea u t o m a t i cd e r i v a t i o no ft e s t i n gs e tw e r ea n a l y z e d a n dc o m p a r e d b a s e do nt h ea n a l y s i s ,at h o r o u g hr e s e a r c ho nt e l e l o g i c t a us d la n dt t c ns u i t e 4 4w h i c hi st h ep o p u l a rs i m u l a t i o ne n v i r o n m e n tw a sc a r r i e do u t t h i st h e s i sg a v et h er e a s o nf o r t h er e s u l tt h a tt h es i m u l a t i o ne n v i r o n m e n tc a l ls a t i s f yt h ep r o t o c o lc o n f o r m a n c et e s ta n dm e e tt h e r e q u i r e m e n t so fe t s it e s ts t a n d a r d a tl a s t ,a l lt h ew o r kw h i c hw a sd o n ei nt h i se n v i r o n m e n tw a s d e s c r i b e d t h es y s t e m sm o d e l i n go fc a l ls e s s i o np r o c e s sb a s e do ns i pi ni m sw a sc a r d e do n u s i n gs d l w i t ht h i sm o d e l ,t h ea b s t r a c tt e s ts u i t eb a s e do nt t c nw a sa l s oc r e a t e d a tt h ee n d o ft h i st h e s i s ,c o n f o r m a n c et e s t i n gw a sc a r r i e do u tw i t ht h ea b s t r a c tt e s ts u i t e k e y w o r d s :p r o t o c o lt e s t i n g ;p r o t o c o lc o n f o r m a n c et e s t i n g ;t t c n ;t e l e l o g i c t a u i i 南京邮电大学硕上研究生学位论文目录 目录 摘要i a b s t r a c t i i 目勇毛i i i 第一章绪论l 1 1 课题的目的与意义l 1 2 论文内容及本人所做的工作l 第二章通信系统的测试理论与技术3 2 1 软件测试概述3 2 1 1 软件测试的原则3 2 1 2 软件测试方法和测试内容3 2 2 协议一致性测试4 2 2 1 协议测试的基本概念4 2 2 2 协议一致性测试的标准化。6 2 2 3 协议一致性测试过程7 2 2 4 协议一致性测试结构。9 2 3 测试集描述与t t c n 一1 2 2 3 1t t c n 3 的发展及应用1 2 2 3 21 陀n 一3 系统的测试结构1 5 2 3 3t t c n 3 的优点16 2 3 4t t c n 3 核心语言1 7 2 4 本章小结18 第三章协议描述及测试集生成方法研究1 9 3 1 协议的形式化描述方法1 9 3 1 1f s m 1 9 3 1 2e s t e l l e 1 9 3 1 3l o t o s 2 0 3 1 4s d l 和m s c 2 0 3 1 5 几种方法的比较2 2 3 2 抽象测试集的生成方法2 3 3 2 1 基于f s m 的测试集生成方法2 3 3 2 2 基于e s t e l l e 的测试集生成方法2 4 3 2 3 基于l o t o s 的测试集生成方法2 4 3 2 4 基于s d l 和m s c 的测试集生成方法2 5 i 目录 南京邮电大学硕士研究生学位论文 第一章绪论 第一章绪论 1 1 课题的目的与意义 随着互联网的蓬勃发展和社会经济的信息化,数据及多媒体业务将迅速超越传统语音 业务,成为未来巨大的通信需求。在此背景下,人们期待一种新的网络能解决面临的诸多 问题,于是下一代网络( n g n ) 应运而生。目前,研究n g n 的国内外标准化组织和论坛 包括i t u t 、i e t f 、e t s i 、国际软交换协会i s c 、3 g p p 、3 g p p 2 、和p a r l a y 等。i t u t 认 为n g n 代表了网络融合的发展趋势。与此同时,计算机网络与通信的作用日益明显,已 成为社会正常运转和发展的必要保障,随着软件应用的不断深入、规模不断扩大,其复杂 度也r 益提高。因此,对网络通讯协议、通讯电信设备以及软件的安全、稳定、可靠、高 性能的要求日益突出。这样相关领域的测试技术也日益受到各方面的重视,测试理论和技 术也在快速发展和提高。 计算机网络是现代通讯技术与计算机技术相结合的产物。为了使系统中的计算机进行 有效地通信,就必须为通信行为制定一组规则。协议就是为计算机系统之间交换信息而建 立的规则、标准或约定。只有遵守协议,各个计算机系统才能互相理解,实现自由可靠的 通信。协议测试并不是网络测试的全部内容,随着网络技术的进步,新型业务的出现,对 测试也提出了新的要求。现行测试包括许多方面,如:功能测试、性能测试、兼容性测试、 一致性测试等。但在众多测试中,协议一致性测试是其它测试的基础,也是计算机网络测 试的主要内容之一。协议一致性测试是为了验证计算机网络通信协议的实现与相应的协议 标准之间的一致性,是确保各种计算机系统正确互连和互操作的关键。 1 2 论文内容及本人所做的工作 随着网络技术的发展,以实现网络协议为内容的软件大量出现。然而,在实际应用中 由于通信软件的缺陷而造成通信系统故障并导致严重后果的事例屡见不鲜。因此对协议软 件进行合理有效的测试成为解决通信软件质量问题的重要方法。笔者结合研究生阶段参与 交换系统设计及测试的经验,决定分为以下四个步骤来展开研究。 第一阶段,笔者对通信软件测试理论为背景展开研究,深入的理解了软件测试以及协 议一致性测试的要求和原则,并对测试的理论方法进行研究。为最终设计测试方案奠定了 基础。 第二阶段,笔者对协议一致性测试中协议形式化描述方法和测试套自动生成方法展开 调研,并对各种方法进行了比较分析,最终确定使用s d l 语言来描述协议,生成基于m s c 南京邮电大学硕士研究生学位论文第一章绪论 的测试集。 第三阶段,笔者尝试将第二阶段的研究成果应用到下一代网络的通信协议上,以基于 s i p 的会话处理过程为研究对象。阐述了一种基于s d l 的系统建模方法,实现了对i m s 中 基于s i p 协议的会话处理的建模过程。 第四阶段,笔者对上述建立的i m s 中的会话处理系统进行了仿真和验证,并且基于 s d l 和m s c 自动生成测试套,使用该测试套进行基于t t c n 的协议一致性测试。 本文具体章节安排如下t 第一章:论文的绪论部分,介绍了论文的研究背景、研究的主要内容及论文的安排。 第二章:对通信系统的测试理论与技术的阐述,给出了软件测试的基本方法,测试原 则,进而主要研究协议一致性测试的测试结构、过程等,同时介绍了用于协议一致性测试 套的描述语言t t c n 。 第三章:对协议形式化描述方法和测试套自动生成方法展开调研,并对各种方法进行 了比较分析,最终确定本文将使用s d l 语言来描述协议,生成基于m s c 的测试集。 第四章:基于s d l 的协议描述的设计过程。将上述理论研究的成果应用到下一代网络 的协议分析中,利用s d l 协议描述方法,对i m s 中基于s i p 的会话处理过程进行设计, 形成测试框架,生成测试集。 第五章:对上述建立的i m s 中的会话处理系统进行了仿真和验证,并且对自动生成的 测试套进行基于t t c n 的协议一致性测试。 最后,在结束语部分对本文所做的工作进行总结,并指出了研究中存在的不足与下一 步的研究方向。 2 南京邮电人学硕i :研究生学位论文第二章通信系统的测试理论与技术 第二章通信系统的测试理论与技术 2 1 软件测试概述 随着信息技术的飞速发展,软件产品已应用到社会的各个领域,软件质量问题己成为 人们共同关注的焦点。人们对计算机依赖的程度越高,对其可靠性的要求就越高。实际上, 对于软件来讲,不论采用什么样的技术和方法,软件中都会有故障存在。采用新的编程语 言、先进的开发方式、完善的开发过程,可以减少故障的引入,但是不可能完全杜绝软件 中故障的存在,因此需要采用相应的措施来发现和解决这些软件故障,当然首要的是要发 现这些软件故障,这就需要靠软件测试来实现【1 1 。软件测试是对软件计划、软件设计、软 件编码进行查错和纠错的活动。测试的目的是为了找出软件开发过程中各个阶段的错误, 以便分析错误的性质和确定错误的位置,并纠正错误。 2 1 1 软件测试的原则 软件测试的原则有以下几点: 1 ) 测试例中一个必需部分是对预期输出或结果的定义。 2 ) 应当避免由程序员测试自己的程序。 3 ) 编写软件的组织不应当测试自己编写的软件。 4 ) 应当彻底检查每个测试的执行结果。 5 ) 测试用例的编写不仅应当根据有效和预期的输入情况,而且也应当根据无效和未 预料到的输入情况。 6 ) 检查程序是否“未做其应该做的”仅是测试的一半,测试的另一半是检查程序是 否“做了其不应该做的”。 7 ) 应当避免测试用例用后即弃,除非软件本身就是一个一次性的软件。 8 ) 计划测试工作时不应默许假定不会发现错误。 9 ) 程序某部分存在更多错误的可能性,与该部分已发现错误的数量成正比。 1 0 ) 软件测试是一项极富创造性、极具智力挑战性的工作。 2 1 2 软件测试方法和测试内容 软件测试的种类很多,大体上可以从以下几个方面来进行划分: 1 ) 从是否需要执行被测软件的角度来看,可分为静态测试和动态测试。 2 ) 从测试是否针对系统内部结构和具体实现算法的角度来看,可分为白盒测试和黑 盒测试。 3 南京邮i 乜人学硕t - 研究生学位论文第一二章通信系统的测试理论- r j 技术 3 ) 从测试范围角度来看,可分为单元测试、系统测试、集成测试等等。 4 ) 从测试目标角度来看,可分为性能测试、功能测试、可靠性测试等等。 5 ) 从测试采用的工具角度来看,可分为自动测试、手工测试等等。 软件测试的种类多种多样,测试所采用的方法和技术也多种多样。有些测试方法是针 对测试对象所提出的,有些测试方法是根据测试软件的组织机构提出的,而有些是根据测 试工具提出的。而本文将重点讨论协议测试的理论及实现。研究协议测试的一个重要的原 因是一个标准的协议定义并不能确保各个厂商的具体协议实现之间能够成功的进行通信。 这是因为协议标准一般是通用自然语言描述的,不同的厂商可能会有不同理解,从而造成 协议实现上的差别,甚至可能是错误的实现。所以需要有一种有效方法来对协议的实现进 行正确和有效的判别,这就是“协议测试”。实际上,协议测试是试图通过试验的方法找 出错误的过程。在协议测试过程中既要模拟协议实现j 下常工作的情况,也要模拟异常使用 的情况;既要模拟协议实现单独运行的情况,也要模拟协议实现之间相互通信的情况。这 样才能确信在任何情况下系统的正常工作状况。由于对一个系统进行无穷尽的测试是不现 实的,所以协议测试并不能保证一个协议实现的完全j 下确性,即只能表明“存在错误”, 而不能证明“不存在错误”,这是协议测试的基本出发点。 2 2 协议一致性测试 协议一致性测试是指针对一个网络协议的实现,测试者依据协议说明通过测试套以及 对其进行测试,检验其实现是否与协议说明所描述的功能一致。因此,协议一致性是保证 一个网络协议正确实现的关键 2 】【3 】。 2 2 1 协议测试的基本概念 协议测试理论是协议工程学的一个重要分支。研究协议测试理论的原因在于一个标准 化的协议并不能确保该协议的实现之间能够成功地进行通信。 因为协议标准目前基本上是使用自然语言描述的,实现者对于协议的不同理解会导致 不同的协议实现,甚至有时会是错误实现。因此需要一种有效的方法来对协议实现进行判 别,这便是“协议测试 。协议测试是在软件测试的基础上发展起来的。根据对被测软件 的控制观察方式,软件测试分为三种:白盒测试,黑盒测试和灰盒测试。 白盒测试是已知该系统的内部结构,允许人们检查系统的内部结构,检测系统是否按 照规定运行。在使用这一方案时,测试者从检查系统的逻辑着手,通过每条语句至少执行 一次来全面检查整个程序代码,得出测试数据。由于可以深入到被测试系统的内部,因而 测试能力非常强,但测试过程本身变得非常复杂,对被测系统要求也很高。 4 南京邮电大学硕 :研究生学位论文第一二章通信系统的测试理论与技术 黑盒测试是已知系统应该具有的功能,完全不考虑系统内部结构和内部特性,也就是 说软件系统被看作一个黑盒子,只通过观察其输入输出来评价该系统某一方面的特性,而 不涉及程序的内部结构。在这种测试下,可以把被测试的系统看作是一个对象,可以和测 试系统交换消息。黑盒测试只关心被测软件的输入和输出,测试能力虽然弱了一些,但是 测试过程本身相对简单,对被测软件系统也无特殊要求。因此在实际测试活动中,黑盒测 试应用更广。 灰盒测试是将白盒测试和黑盒测试结合起来形成的一种测试方法,它吸收了两种方法 的优点。测试方法的选择一方面要根据用户的需求,另一方面也要考虑测试系统对被测软 件系统控制和观察的能力。 协议测试是一种黑盒测试,它依据协议标准来控制观察被测试协议实现的外部行为, 对被测协议实现进行测试。协议测试主要有四种:一致性测试( c o n f o r m a n c et e s t i n g ) 、互 操作性测试( i n t e r o p e 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 ) 和强健性测试 ( r o b u s t n e s st e s t i n g ) 。协议测试中的一致性测试是一种“功能测试”,它依据一个协议的 描述对协议的某个实现进行测试,判别一个协议的实现与所对应的协议标准是否相一致。 i 在一致性测试中,只对协议实现的外部可观察行为进行测试,而不涉及协议实现的内部结 构;但是,单纯对一个协议实现进行一致性测试,并不能确保不同协议实现之间通信的成 功,我们还需要将协议实现放在一个实际的通信网络环境中进行测试。在这种测试中,主 要检测一个协议实现与其它系统之间是否能够进行成功可靠的通信交互,因此称为互操作 性测试。对于一个新的协议实现来说,与典型的、主流的协议实现的互操作测试是非常重 要的。一致性测试和互操作性测试都是功能测试,而性能测试的目的是测试协议实现的性 能参数,并根据这些参数对协议实现的性能做出评价。此外,一致性测试和性能测试的测 试对象都是一个,而互操作性测试的测试对象则是多个协议实现。三种测试之间同样是有 联系的,一致性测试是其它两种测试的基础,只有协议实现满足一致性需求,对它进行互 操作性测试和性能测试才更有意义。而性能测试的结果对互操作性测试也有影响,性能匹 配的协议实现之间才能更好地互操作。 表2 1 列出了协议一致性测试、互操作性测试、性能测试和强健性测试的主要特征。 南京邮电大学硕j :研究生学位论文 第二章通信系统的测试理论与技术 表2 1 各种测试方法的主要特征 测试类型一致性测试互操作性测试性能测试强健性测试 测试内容测试协议实现的测试协议实现之测试协议实现的测试协议实现在 功能是否与协议问互连和互操作性能参数,并做各种恶劣环境下 标准描述的要求的能力出性能评价运行的能力 相一致 测试对象数一个多个一个 一个 其中一致性测试是其它三种测试的基础,性能测试和强健性测试的结果将影响测试协 议实现之间的互操作性。 协议测试理论包含了协议测试的整个过程,其主要研究内容可以概括为测试组织、测 试方法、测试生成、测试集描述、测试管理、测试执行和判决、测试结果分析等多个方面。 测试组织主要是针对整个协议测试过程进行框架性的研究,明确测试过程中各个阶段 所应完成的功能;测试方法则是研究在被测系统提供不同的可访问程度时,组成测试系统 的多个测试器的配置方法和对被测系统的访问方法;测试生成主要关注于如何从协议标准 的描述中获得进行协议测试所需要的测试集;测试集描述的目的是寻找一种合适的语言或 公式,从而能以简洁、通用和结构化的方式表达协议测试所需要的测试例;测试管理的研 究对象是如何管理和协调测试系统中的各个组成部分,以便成功地完成测试;测试执行和 判决是协议测试过程中的关键阶段,如何解释测试例的涵义以及如何作出测试判决是它的 研究内容,同时也是构造测试系统的基础;测试结果分析是协议测试过程的最后一个阶段, 研究如何从测试结果中分析生成测试报告并得出对被测协议实现的结论。组成协议测试的 各个方面即相互紧密相连又可以各自成为被研究的对象,贯穿所有研究方面的是形式化方 法。 2 2 2 协议一致性测试的标准化 协议一致性测试的国际标准的建立是从八十年代早期开始,欧洲的许多研究机构开始 在建立标准化的协议一致性测试活动方面进行合作,其目的是制定一个在o s i 框架内进行 协议一致性测试的指导标准。最初的参与者包括法国的a d i ,德国d a r m s t a d t 的g m d 和英国的国家物理实验室n p l 。这些研究机构在这之前曾分别关注于一致性测试的不同方 面的研究。而在9 0 年代,国际标准化组织提出的关于o s i 参考模型和i t u t 协议进行一 致性测试的理论框架和测试方法的国际标准i s o i e c 9 6 4 6 ( i t u t x 2 9 0 s e r i e s ) ,成为了协议 一致性测试领域里的一个里程碑。 协议一致性测试理论主要表现在由o s i 制定的协议一致性标准s i o i e c 9 6 4 6 。这个标 6 南京邮哇三人学硕i :研究生学位论文 第二苹通信系统的测试理论与技术 准主要针对的是由自然语言描述的协议的测试。在s l o i e c 9 6 4 6 中对一致性定义如下:“一 个一致性的实现应该满足静态一致性需求和动态一致性需求,并与协议实现一致性声明 ( p r o t o c o li m p l e m e n t a t i o nc o n f o r m a n c es t a t e m e n t s ,称p i c s ) 中所声明的功能相符合”。 i s o i e c 9 6 4 6 标准是针对使用自然语言描述协议的测试而制定的,最初由五部分组成: i s o i e c 9 6 4 6 1 :基本概念; i s o i e c 9 6 4 6 2 :抽象测试套描述; i s o i e c 9 6 4 6 3 :树表结合表示法t t c n ; i s o i e c 9 6 4 6 4 :测试实现; i s o i e c 9 6 4 6 5 :一致性判断过程对实验室和客户的要求。 后来又补充了以下两部分: i s o i e c 9 6 4 6 6 :侧面测试说明; i s o i e c 9 6 4 6 7 :实现一致性声明。 在i s o i e c 9 6 4 6 推荐的是抽象测试方法。在此方法中的测试集由抽象测试集( a b s t r a c t t e s ts u i t e ,简称a t s ) 组成,每个抽象测试集又由抽象测试例组成。抽象测试例是独立于任“ 何测试系统的。在i s o i e c 9 6 4 6 中建议使用t t c n 作为测试集的描述方法。 2 2 3 协议一致性测试过程 一致性测试的目的在于验证协议实现与相应的协议标准的一致性,它只关心协议实现 呈现于外部的性能。作为各项协议测试工作的前提和基础,一致性测试始终是协议测试领 , 域研究的重点。在理想的情况下,不同厂家按相同协议标准生产的设备本应在网络环境下 j 下常通信,但是实际情况并非如此,由于设计者对标准的不同理解,以及各个厂家持有不 同的技术政策,导致其产品的某些性能要么偏离标准,要么是标准的一个子集。一致性测 试可以提高人们对设备( 协议实现) 正确性的置信程度。 一致性测试首先需要根据协议标准建立起一个协议原型,然后根据这个原型,我们分 析生成相应的测试序列集,针对于具体的协议实现,我们还要选择合适的测试方法,将生 成的测试集转化为可执行的测试用例,应用到被测的协议实现上,观察激励反映,最终得 到验证结果。 南京邮电人学硕一l j 研究生学位论文 第二章通信系统的测试理论与技术 或失败 图2 1 一致性测试过程 如图2 1 描述了协议一致性测试过程【4 1 。主要分为如下四步: 1 ) 测试生成,即从协议标准产生抽象测试集。之所以称为“抽象测试集是因为它 是独立于所有的协议实现的,抽象测试集由多个用于不同测试目的的测试序列组成; 2 ) 测试实现,即由抽象测试集产生可执行的测试序列集。抽象测试集中的抽象测试 序列被转变为在一个实际的测试设备或测试系统上可执行的测试用例。这一阶段需要考虑 测试环境与被测协议实现( i u t ) 的具体情况; 3 ) 测试执行,即将可执行的测试序列集施加到被测网络协议上,并对i u t 的外部响 应行为进行观察,记录各条测试序列的执行结果; 4 ) 测试判决,即对测试执行的结果进行验证和分析,得到一个有关i u t 相对于协议 标准一致性的判决,给出协议一致性测试报告( p r o t o c o lc o n f o r m a n c et e s t i n gr e p o r t ,简称 p c t r ) 。 南京邮电人学硕士研究生学位论文第一二章通信系统的测试理论0 技术 2 2 4 协议一致性测试结构 i s o i e c 9 6 4 6 中规定的协议一致性测试结构如下图所示【5 】: 图2 2 协议一致性测试结构 在此协议一致性测试结构中主要由以下部分组成: 上测试裂:( u p p e rt e s t e r ,简称u t ) :它控制测试例的执行,并且利用抽象服务原语 ( a b s t r a c ts e r v i c ep r i m i t i v e s ,简称a s p ) 幂i 协议数据单元( p r o t o c o ld a t au n i t ) ,在控制和观察 点p c o ( p o i n to f c o n t r o la n do b s e r v e ,简称p c o ) 对来自被测实现的输出和输入进行控制和观 察。 二: 下测试器( l o w e rt e s t e r ,简称l t ) - 它作为上测试器的一个对应端点存在,接收从被测 实现( i m p l e m e n t a t i o nu n d e rt e s t ,简称i u t ) 传送来的数据,并且和期望数据比较,做出判 决。它也是通过底层服务提供者的p c o 和i u t 进行通讯。 被测实现:它是被测的实体,处于上测试器和下测试器的中间。t 必须有p c o ,上 下测试器只有通过p c o 才能和i u t 进行通讯。 测试协调过程( t e s tc o o r d i n a t i o np r o c e d u r e ,简称t c p ) - 它主要用来协调上测试器和 下测试器,使它们保持同步。t c p 的实现可以采用i u t 实现,也可以采用i u t 外的协议实 现。 底层服务提供者:它为i u t 提供更底层的服务。但存在的一个前提是底层服务提供者 提供的服务必须是正确的,这样才能确保测试的结果能够反应i u t 的行为。 在i s o i e c 9 6 4 6 推荐的是抽象测试方法。在此方法中的测试集由抽象测试集( a t s ) 组 成,每个抽象测试集又由抽象测试例组成。抽象测试例是独立于任何测试系统的。协议测 9 堕室堕皇盔堂堡型壅竺堂垡笙奎 笙三主望笪墨竺竺型堕里堡皇垫查 试作为一种实验活动,必须具有一定的测试环境。测试系统首先必须有测试器和被测试的 协议实现砌t 。测试器和被测试实现i u t 可以驻留在同一机器上进行测试,也可以通过数 据通信网络实现远程测试。测试器中的u t 和l t 也可以分离而驻留在不同测试场地。因此, 不同组合的结果就形成了不同的协议测试结构。以下是i s o i e c 一9 6 4 6 标准中建议的四种测 试结构: ( 1 ) 本地测试结构 在这种测试结构中,u t 、l t 、i u t 同处于一台机器中,测试不需要低层通信系统的支 持。t 和l t 的接口设在i u t 的底部,u t 和i u t 的接i z l 设在i u t 的上部。由于u t 和 l t 可集成到一个程序中,因此l t 和u t 的测试协同过程容易实现。测试用u t 和l t 执行 的服务原语来描述,此时l t 扮演的角色是低层服务的提供者。本地测试结构如图2 3 所示, 本文j 下是基于此结构进行协议测试。 服务原语 1 ) 服务原语 图2 3 本地测试结构 ( 2 ) 分布测试结构 在这种测试结构中,m t 和u t 处于同一机器上,l t 分布在远程测试场点的机器中。 l t 控制和观察在远程系统上的( n 1 ) 层服务原语,此时l t 扮演的是( n - 1 ) 层服务提供 者的角色。在本地的( n 1 ) 层服务边界上没有控制和观察点( p c o ) ,只能对n 层服务原 语直接或间接地控制和观察。u t 和l t 的测试协同过程t c p 由测试案例体现。分布测试 结构如图2 4 所示。 和本地测试法相比较,分布式测试法有以下几点不同: l 、l t 和i u t 在物理上是分离的,因此对同一测试事件的观察在时间上会产生差异; 2 、由于l t 和i u t 的通信是通过底层服务实现的,因此存在测试数据丢失、失序和出 错的可能性; 3 、由于u t 和l t 分布在不同的系统,二者之间的同步和控制( 即测试协调过程) 比 l o 南京邮 乜人学硕l :研究生学位论文 第二章通信系统的测试理论与技术 本地测试法要困难得多。 ( n 1 ) 服 语 图2 - 4 分布测试结构 ( 3 ) 协调测试结构 该测试结构和分布测试结构类似,主要区别在于测试协调方法不同。在协同测试结构 中,测试协同方式引入专门的测试管理协议( t m p ,t e s tm a n a g e m e n tp r o t o c 0 1 ) ,u t 和l t 之间通过t m p 实现测试协同过程,协同测试结构如图2 5 所示。而在分布测试结构中,测 试协同是测试实现者在测试案例的设计中考虑并完成的。 烈1 ) h a 图2 5 协调测试结构 ( 4 ) 远程测试结构 该测试结构省去了u t ,仅仅通过( n ) p d u 和( n 1 ) 层服务原语进行测试。测试案例 用( n 1 ) 层a s p 描述。这种方式在无法控制和观察i u t 的上下边界时是非常有用的。这 种方式适合被动式协议实体或服务型协议实体的测试,远程测试结构如图2 - 6 。 这种方法依赖于协议标准来实现i u t 和l t 之间的同步。远程测试法所采用的一个假 设是i u t ( 第n 层协议实现) 的状态可由l t 通过( n 1 ) 层服务与之交换n 层p d u 来确 定。测试判决则是由基于l t 对i u t 提供的激励以及l t 所观察到的i u t 的响应作出的。 南京邮电人学硕j :研究生学位论文 第二章通信系统的测试理论与技术 ( n - 1 ) 层服 图2 6 远程测试结构 端系统协议一致性测试是由独立的第三方进行,或者测试系统与i u t 位于不同的地点, 无法对i u t 的下边界进行直接的访问,这时就需要使用到协调测试方法、分布测试方法、 远程测试法。这三种方法都假设i u t 的下边界不存在p c o ,对i u t 的激励和观察功能分 成本地和外部两部分。它们共同的特点是l t 和i u t 处于不同的系统中,两者之间通过底 层服务提供者实现连接。 2 3 测试集描述与t t c n 协议的测试活动从测试集的产生开始。 所谓测试集生成,就是从用自然语言描述的协议标准生成测试集的过程,是测试实现 的基础,也是连接测试生成和测试执行的纽带。许多语言被用于测试集描述,如形式化测 试描述语言t t c n ,脚本语言t c l t k ,p e r l ,编程语言c c + + j a v a 等。其中,t t c n 因为其 突出的对测试的支持能力,易于被测试人员理解和使用而成为协议测试中广泛使用的测 试集描述法。 通信行业使用最多的测试集描述法是t t c n 。o s i i t u 组织颁布的协议一致性测试基 本框架和方法标准( i s o i e c9 6 4 6 ( i t ux 2 9 0 ) ) 由五大部分的关键内容,t t c n 是其中的 第三部分( i s o i e c9 6 4 6 3 ) 。该标准的颁布为通信协议的一致性测试提供了准则,所以 t t c n 语言广泛地用于在o s i 一致性测试系统中描述抽象测试集。一个用t t c n 描述的测 试序列,能充分表明测试系统和被测协议实体之问的行为,从而判定协议实现的行为,最 终得出通过或失败的判决,因此,用t t c n 表示的测试集是一致性测试的基础和关键。 2 3 1 t t c n 3 的发展及应用 最初的t t c n ,取自t r e ea n dt a b u l a rc o m b i n e dn o t a t i o n ,是树表组合描述之意。它最 早出现于1 9 8 4 年,作为o s i 一致性测试方法和框架,它包括i s o i e c 9 6 4 3 3 和c c i t t 1 2 堕室坚坚叁兰堡! :婴窒竺兰垡笙塞笙= 三兰望笪墨丝塑型鎏里堡:! 垫查 r e c x 2 9 2 。t t c n 广泛用于标准组织( 如t i u t ,i s o i e c ,a t mf o r u m ) 的协议一致性测试 套的描述【6 】【7 1 。然而第一版的t t c n 不能设计和描述并行行为,人们很快意识到对t t c n 的并行能力的扩展的重要性和迫切性。在扩展过程中,除了并行机制,模块和打包的概念 被引入以增加复用性,a s n 1 被引入以扩充单一的语法。经过这样扩展的t t c n 被1 s o i e c 和i t u t 编订为t t c n 第二版

温馨提示

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

评论

0/150

提交评论