(信号与信息处理专业论文)cdma2000协议测试平台研究.pdf_第1页
(信号与信息处理专业论文)cdma2000协议测试平台研究.pdf_第2页
(信号与信息处理专业论文)cdma2000协议测试平台研究.pdf_第3页
(信号与信息处理专业论文)cdma2000协议测试平台研究.pdf_第4页
(信号与信息处理专业论文)cdma2000协议测试平台研究.pdf_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

c d m a 2 0 0 0 协议测试平台研究 摘要 随着计算机网络和通信技术的飞速发展,特别网络融合的趋势,协议的设计 和实现越来越复杂。厂商必须以更低的成本,更短的时间,开发新的稳定的协 议,满足网络发展的需求。为了提高协议实现的正确性,保证协议实现符合协议 规范的要求,必须借助协议测试技术。协议可分为一致性测试、互操作性测试以 及性能测试等。而协议测试集自动生成理论则极大的简化了协议测试的工作,缩 短了协议的开发时间。 本文在对目前协议测试理论及协议测试集自动生成理论充分研究的基础上, 提出了协议自动化测试框架。该框架将协议溅试理论转化为实践,建议采用形式 化语言描述协议及协议系统的行为,并通过测试集自动生成理论自动生成基于 t t c n - 3 描述的协议测试集。测试框架可以自动运行测试集并验证测试结果,统 计测试数据。 同时本文针对3 g 网络的特点,提出针对c d l a _ 2 0 0 0 网络性能测试( 比如 c a l lk a d 性能测试) 的测试集生成。采用单项基本性能测试和模拟真实网络测 试相结合的方法,对3 ( 3 网络节点进行性能测试。 关键词:协议测试、性能测试、测试集自动生成、t t c n - 3 s t u d y in go fc d m a 2 0 0 0p r o t o c oit e s tin gpia t f o r m 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 f t e l e c o m m u n i c a t i o na n de t h e r n e t ,e s p e c i a l l yt h e t r e n do f n e t w o r kc o n v e r g e n c e ,t h ed e s i g na n di m p l e m e n t a t i o no f p r o t o c o la r eb e c o m i n g m o r ea n dm o r ec o m p l e x i ti sn e c e s s a r yf o r 芦o t o c o lv e n d o r st op u s hn e wp r o t o c o l o n t om a r k e tw i t hl o w e rc o s t ,s h o r t e rt i m e ,a n db e t t e rq u a l i t y w eh a v et or e l yo n p r o t o c o lt e s t i n gt h e o r yt oi m p r o v e t h eq u a l i t yo f n e wp r o t o c o l ,a n de n s u r ei tm e e t st h e r e q u i r e m e n t so f s p e c i f i c a t i o ne x a c t l y g e n e r a l l y , p r o t o c o lt e s t i n gc a nb ed i v i d e di n t o t h r e et y p e s :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 ga n dp e r f o r m a n c et e s t i n g a n d t h et h e o r yo f t e s ts u i t e sa u t o g e n e r a t i o ns i m p l i f i e st h ep r o t o c o lt e s t i n g ,a n dd e c r e a s e s t i m e t 0 一m a r k e t t h i sp a p e r , b a s e do nt h ef o u n d a t i o no f f u l l yr e s e a r c ha b o u tp r o t o c o lt e s t i n gt h e o r y a n dt e s ts u i t e sa u t o - g e n e r a t i o nt h e o r y , r a i s e san e wf r a m e w o r kf o rp r o t o c o lt e s t i n g a u t o m a t i o n i ta d o p t sf o r m a ll a n g u a g et od e s c r i b ep r o t o c o la n ds y s t e m sb e h a v i o r s ,a n d a u t o - g e n e r a t e st e s ts u i t e st h a tw r i t t e nb yt t c n 一3t h r o u g h t e s ts u i t e sa u t o - g e n e r a t i o n t h e o r y t h ef i - a m e w o r kc a n r u n a u t o m a t i c a l l yt ov e r i f yt h et e s tr e s u l t sa n dg e n e r a t et e s t r e p o r t s m e a n w h i l e t h ep a p e ra l s op r o v i d e san e wm e t h o df o rp e r f o r m a n c et e s t i n go f c d m a 2 0 0 0n e t w o r k ( s u c ha sc a l ll o a dp e r f o r m a n c et e s o ,b a s e do nt h es p e c i a l r e q u i r e m e n t so f 3 g n e t w o r k s i tc o m b i n e st h es i n g l em i s s i o np e r f o r m a n c et e s tw i t ht h e v i r t u a ln e t w o r k t h es o f t w a r es i m u l a t i o no f r e a ln e t w o r k p e r f o r m a n c et e s t t o e v a l u a t et h ep e r f o r m a n c eo f d e v i c e sd e p l o y e di n3 gn e t w o r k s k e y w o r d s :p r o t o c o lt e s t i n g ,p e r f o r m a n c et e s t i n g ,t e s ts u i t e sa u t o - g e n e r a tio n t t c n 一3 i i 图索引 图1 协议系统故障检测方法5 图2 主动测试的测试方法6 图3 测试工作的流程9 图4t t c n 一3 测试器的一般模型1 4 图5t t c n - 3 规范1 5 图6t t c n - 3 测试框图1 8 图7s d l 系统结构示意图2 1 图8f s m 状态空间遍历2 2 图9m s c 描述s u t 接口的交互流程2 3 图1 0f s m 示意图2 4 图1 1 几种语言之间的关系2 5 图1 2 理想的互操作性系统一t2 8 图1 3c a l li o a d 测试2 9 图1 4 模拟真实的网络3 1 图1 5 协议自动化测试框架3 4 图1 6 测试策略选择3 5 图1 7 单主控与多主控模式 v 独创声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研 究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含未获得 ! 蕉; 垫塑直墓位置蔓挂剔直盟数:奎拦互窒2 或其他教育机构的学位或证书使用过的 材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说 明并表示谢意。 学位论文作者签名: 签字日期:年月 日 一一一 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,有权保留并 向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅本人 授权学校可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用 影印、缩印或扫描等复制手段保存、汇编学位论文( 保密的学位论文在解密后适 用本授权书) 学位论文作者签名: 签字日期: 年 月曰 学位论文作者毕业后去向: 工作单位: 通讯地址: 导师签字:玎少鼬导师签字:lj 气一j 日 7 月r 年f i : : 话编 期 电邮 e 字 签 c d m a 2 0 0 0 协议测试平台研究 1 1 研究背景 1 绪论 i i i 协议测试简介 协议是两个网络对等实体之间通信时遵守的约定,保证数据的正确及有效传 输。网络设备通过实现协议栈来提供网络服务,由协议栈中的各层协议组成的系 统称为协议系统,协议实现的正确性是网络正常运行的保障。随着计算机网络和 通信技术的飞速发展,特别是开放型异构网络的互联,协议的设计和实现越来越 复杂。本来只运行于单一网络中( 如x 2 5 、a t m 、e t h e m e t ) 的协议,如今却面 临异网融合、协议交互的挑战。协议实现厂商必须以更低的成本,更短的时间, 开发新的稳定的协议。为了提高协议实现的正确性,保证协议实现符合协议规范 的要求,必须借助协议测试技术。 协议测试技术是指通过一组公认的测试集向被测对象发出测试数据,然后通 过被测对象的应答来确定协议实现符合相应协议标准的程度,确定被测对象的性 能指标,或者确定被测设备的可靠性或鲁棒性,或者判定不同厂家设备的互通能 力的过犁1 1 从一十世纪七十年代开始,协议测试随着网络技术和应用而进行了大量的研 究,协议测试由十有比较专门的方法和体系,作为软件测试的一个分支被独立研 究。目前,协议测试依据测试目的的不同,大致被分为三种类型:一致性测试、 互操作性测试和性能测试【”。其中一致性测试在理论及实践方面有充分的研究, 而后两者由于不同领域的特殊性,研究比较分散。但是随着网络应用的日益广 泛,网络应用数据的多媒体化和高速化的发展趋势,对设备及所实现的协议提出 更高的要求,特别是性能方面的要求。因此,协议的性能测试理论及实现必须有 所突破。 1 1 23 g c d m a 2 0 0 0 简介 即将商用的第三代移动通信技术与目前广泛应用的前两代系统相比,主要特 征是可提供丰富多彩的移动多媒体业务,其设计目标是为了提供比第二代系统更 c d m a 2 0 0 0 协议测试平台研究 大的系统容量、更好的通信质量,而且要能在全球范围内更好地实现无缝漫游及 为用户提供包括话音、数据及多媒体等在内的多种业务,同时也要考虑与已有第 二代系统的良好兼容性。 目前国际电联接受的3 g 标准主要有以下三种:w c d m a 、c d m a 2 0 0 0 与 t d s c d m a 。c d m a 是c o d ed i v i s i o nm u l t i p l ea c c e s s ( 码分多址) 的缩写,是第三 代移动通信系统的技术基础。c d m a 系统具有频率规划简单、系统容量大、频率 复用系数高,抗多径能力强、通信质量好、软容量、软切换等特点,可以大量减 少投资和降低运营成本。 c d m a 2 0 0 0 标准是由窄带c d m a ( c d i m ai s 一9 5 a b ) 标准演进而来的第三 代移动通信标准,由美国高通公司为主导提出,摩托罗拉、朗讯和韩国三星等厂 一 商参与。同时提供话音和高速分组数据业务,最高速率可达3 1 m b i t s 。 : 1 1 3 协议测试研究及实现的必要性 ; 面对竞争越来越激烈的通信设备市场,厂商要以较短的时间开发高可靠的设 , 备,必须依赖高效的协议测试工具。3 g 的标准目前还在不断演进中,测试设备 。, 及系统也必须随着标准的演进而不断改进,而且目前各个测试工具往往是针对一 个或几个接口功能来进行测试的,没有形成对整个网络性能进行测试及分析的系 统。相对于2 g ( g s m 、c d m a ) 网络,3 g 无论从网络结构上,还是从信令和数 据流量上,都复杂得多。所以3 g 网络设备的测试也对测试设备提出了极高的要 求。除去可以采用第三方的射频辐射测试( 包括电磁兼容测试) 、射频传导测试、 音频测试等物理测试外,协议实现的测试理论及测试工具基本依赖自己研发。因 此协议测试研究,尤其是性能测试研究的必要性不容置疑。 1 2 研究内容 本课题的研究内容为协议测试的理论研究及测试自动化框架的实现,以 c d m a 2 0 0 0 通信协议一致性、互操作性、性能测试为对象,重点放于格式化语言 的网络模拟、测试集自动生成、基于策略的协议性能测试,以及测试自动化框架 的实现。 ( 1 ) 协议测试理论的研究及总结 2 c d m a 2 0 0 0 协议测试平台研究 本课题将对协议测试理论的现状进行详细的分析,包括协议测试的概念、分 类、实现方法、现状等进行综述。通过对相关理论的分析与总结,结合下一代网 络的特点,寻求协议测试新方法的理论基础。 ( 2 ) 协议测试集自动生成理论的研究 传统的协议测试很大程度上是通过测试人员手工输入测试集进行测试。其效 率及结果的可靠性很难保证,测试的覆盖度也不能达到要求。随着格式化描述语 言在协议中的应用,基于格式化描述语言的测试集自动生成的理论研究成为协议 研究的重点。本课题将对现有的协议测试集自动生成理论进行研究。 ( 3 ) c d m a 2 0 0 0 系统的性能测试 性能测试是协议测试的重要组成部分,也是系统是否满足客户需求的关键。 本课题将着重对c d m a 2 0 0 0 系统的性能测试( 目前只针对c a l ll o a d 测试) 方法 进行研究。 -t 一 ( 4 ) 自动化测试平台的实现建议 本课题将在最后给出测试平台实现的软硬件建议。将协议测试理论转化为实 际应用。 1 3 研究成果 2 , 本课题的研究,希望能在以下几个方面取得突破,并为他人的继续深入研究 提供一些参考: ( 1 ) 提出协议测试自动化框架 协议测试的自动化框架将不仅在最后的测试阶段使用,更将贯穿协议实现的 整个软件生命周期,自客户的需求开始,在需求、设计、开发、测试、提交等阶 段,该框架均能发挥作用,以帮助提高协议的质量,缩短开发时间,满足客户的 需求。 ( 2 ) 提出t t c n 一3 】协议测试集的自动生成 协议测试集自动生成理论的应用极大的提高了协议测试的效率,保障了协议 的功能按需实现。t t c n 3 是目前标准化的协议测试集描述语占,也是3 g 标准 c i ) m a 2 0 0 0 协议测试平台研究 化工作组对3 g 协议测试所推荐的语言。基于格式化语言描述的协议到t t c n - 3 测试集的自动生成将简化协议测试的工作。 ( 3 ) 提出c d m a 2 0 0 0 性能测试的方法 与协议功能性测试相比,性能测试缺乏足够的理论基础,更多的是在不同的 领域不同的应用对协议性能的需求不同。本文针对3 g 网络的特点,提出了 c d m a 2 0 0 0 系统性能测试的方法,该方法同样适用于其他3 g 网络的性能测试。 ( 4 ) 给出测试平台实现的软硬件建议 本课题将在最后给出测试平台实现的软硬件建议,包括软件的结构、包含的 模块、各部分功能,以及硬件平台选择的考虑等。 1 4 论文结构 本文共分为五章,组织结构如下: 第一章绪论: 对课题的背景,课题的研究内容做简单的介绍,给出了本课题的研究成果。 第二章协议测试技术综述: 介绍协议测试的概念、分类及各自的特点,按测试目的分为:一致性测试、 互操作性测试和性能测试,按测试方式分为:主动性测试和被动性测试。 第三章测试集生成理论综述: 介绍目前已有的测试集生成理论以及t t c n 在协议一致性测试集描述中的应 用。结合通信协议的特点及实现的难易度等方面,选择形式化描述语言如s d l 来描述网络行为,并结合m s c 自动生成面向需求的t t c n 测试集。结合 c d m a 2 0 0 0 网络特点,提出基于策略的协议性能测试框架。 第四章测试平台实现: 给出协议测试自动化平台的体系框架建议,包括软件模块组成、功能及硬件 选择等。 第五章总结及下一步计划。 4 c d m a 2 0 0 0 协议测试平台研究 2 1 概述 2 协议测试技术综述 2 2 1 协议测试概念 协议测试是用来保证协议实现的正确性和有效性的重要手段。对某个协议实 现进行测试,能够发现被测实现( i m p l c r a e n t a t i o nu n d e rt e s t ,简称i u t ) 与该协议 文本要求的一致性与不一致性,能够发现i u t 之间的互操作性问题,能够发现 i u t 的性能问题,从而揭示出协议实现的缺点和问题,促进它们的改进和完善。 这对于协一议的推广起着关键的作用。 协议测试理论包容了协议测试的整个过程,其主要研究的内容可以概括为测 试组织、测试方法,测试生成、测试集描述、测试管理、测试执行和判决、测试 结果分析等多个方面。针对协议工程中的各个阶段,需要分别采用不同的正确性 保障方法,在协议设计阶段,使用协议验证来检验协议模型的正确性。在协议实 现过程中,使用各种测试方法来减少实现错误。如下图所示,在协议工程的设。, 计、编码、系统集成以及应用阶段,分别对应不同的协议验证方法【4 】。 图1 协议系统故障检测方法 c d 姒2 0 0 0 协议测试平台研究 协议测试的研究基本集中于系统集成测试阶段,采用主动测试的方法。测试 过程大致可以划分为三步。第一步是根据某特定协议文本得到一个独立于所有协 议实现的抽象测试集,称为“协议测试集生成”在这个阶段中要先熟悉要测试 的协议,根据测试需求进行测试集的划分,并用格式化语言( 如t t c n - 3 ) 对划 分的测试集进行定义。第二步是实现特定测试集的执行方法组成,也称“协议 测试实现”。该过程中是将第一步定义的测试集编译成可执行的代码。第三步为 “协议测试执行”,运行已经具体化的协议测试例,并对i u t 的外部行为响应进 行观察,将测试执行的结果记录在协议测试报告中【4 】 2 2 2 协议测试分类 协议测试的分类可以有几种,依据测试目的的不同,可以分为一致性测试、 互操作性测试和性能测试【5 】;依据测试方法的不同,可以分为主动性测试和被动 性测试【们。实际上一致性测试、互操作性测试和性能测试均为主动性测试。被测 系统( s u t ) 放到一个隔离的测试环境中,取得对被测设备的控制,根据测试集 向被测系统发送测试数据,通过观察被测系统的响应来确定协议的实现与否。 斑整孵络鞭备 图2 主动测试的测试方法 ( 1 ) 一致性测试 检测所实现的系统与协议规范的符合程度。协议测试中的一致性测试是一种 “功能测试”,它依据一个协议的描述对协议的某个具体实现进行测试。在一致 性测试中,只对协议实现的外部可观察行为进行测试,而不涉及到协议实现的内 部结构。一致性测试是其他测试的基础,只有一致性测试通过,证明协议基本实 现,才可以进行互操作性、性能测试的非功能性测试。 ( 2 ) 互操作性测试 6 嘉亚兰 幕上 一饕一一 测 一 一一篙重 一系 一。一e = 一 一豺 一则豳= |一一缝1一蝴一 一。露 目 c d m a 2 0 0 0 协议测试平台研究 检测同一协议的不同实现版本之间、或同一类协议不同实现版本之间、甚至 同一协议不同厂商实现之间的互通能力和互连操作能力。 ( 3 ) 性能测试 检测协议实体或系统的性能指标( 数据传输率、联接时间,执行速度、吞吐 量、并发度等) 。协议测试研究中性能测试方面较少,因为性能要求已经脱离功 能性,面向特定的应用领域。因此无法制定所有协议同一的性能测试方案。但是 针对某一特定领域,如w e bs e r v e r 等【7 。o 】,性能测试的研究成果很多。而 c d m a 2 0 0 0 设备大多数的性能测试需求与其吻合。可以借鉴其研究成果,应用于 性能测试。 以上的协议测试实现方法可以分步实施,为协议验证指名方向:首先利用一 致性测试保证协议实现与协议要求的一致性;然后用互操作性测试来测试与协议 一致的各种实现之间的互操作性;最后采用性能测试来观察协议引入的新特性是 否真的达到了设计要求,是否满足性能方面的需求。根据测试的结果,可以反映一 出协议实现的某些细节有可能需要作修改,为协议验证指明方向。所以,对协议 测试进行研究对于协议的验证和改进也有十分重要的作用。 被动测试理论是针对主动测试理论不能覆盖已运行系统的不足提出的。运行 中协议系统中的一些故障比较隐蔽,例如资源使用、程序死锁等问题,通过简单 的主动测试不能发现,只有在某些配置下经过长时问运行才能发现。很多错误在, 投入正式使用以后才会表现出来。为了能够对已经投入使用的网络设备进行正确 性验,人们提出了被动测试的方法来进行故障检测。被动测试通过对运行中的网 络设备的外部行为进行检测分析,与协议规范相比较,发现被测系统的故障f 6 1 。 2 2 一致性测试 2 2 1 概述 协议测试理论经过十几年的发展,在许多方面都取得了很大的进展,其中最 为成熟的是关于协议一致性测试的理论。 9 0 年代,国际标准化组织i s o 专门制定了一套国际标准一i s 0 9 6 4 6 。它的诞 生,是协议一致性测试领域的重要里程碑,它为协议的一致性测试提供了基本方 法和框架,为测试集制定了设计一步骤和描述方法,并为测试系统的实现提供了 c d m a 2 0 0 0 协议测试平台研究 指导。i s o f l e c 9 6 4 6 描述了一个通用的方法论,用以测试一个声称实现了某一 o s i 协议的产品与相应的协议标准的一致性。这个标准由五个部分组成:1 ) 基本 原理;2 ) 抽象测试集描述;3 ) 树表结合表示法;4 ) 测试实现;5 ) 一致性判定过 程对实验室和客户的约束。 一致性测试可分为四个级别【l 】: ( 1 ) 基本互联测试:对i u t 进行限定性测试,主要是有关协议的基本特征,主 要测试是建立互通的可能性,以确保一致性测试进行。 ( 2 ) 能力测试:用来测试静态一致性要求和p i c s ( p r o t o c o li m p l e m e n t a t i o n c o n f o r m a n c es t a t e m e n t ,协议实现一致性陈述) 上声明的能力。 ( 3 ) 行为测试;在i u t 能力范围内,尽可能多的提供动态一致性要求中的理解 性测试。 ( 4 ) 一致性分解测试:进行更深一层的对特殊要求的i u t 的一致性测试。 一致性测试理论集中于协议的形式化描述、测试集覆盖度的理论证明、协议 实现一致性的全面评价以及可执行测试案例的自动生成等。 2 2 2 测试方法 协议一致性测试工作流程如图所示。协议规范以及服务规范都由i s o 颁布。 协议一致性测试所进行的工作分为四步 | 2 - 1 3 】: 第一步:根据协议规范、服务规范确定测试目的; 第二步:生成并描述测试集; 第三步:按测试集对n j t 进行测试,建立一个测试执行系统; 第四部:根据测试记录参照p i c s 和p i x i t ( p r o t o c o li m p l e m e n t a t i o n e x t r a i n f o r m a t i o n f o r t e s t i n g ,协议实现测试的附加信息) 对i u t 进行评估,并给出 测试报告。 c d m a 2 0 0 0 协议测试平台研究 2 3 互操作性测试 图3 测试工作的流程 2 3 1 概述 互操作性测试检测同一协议的不同实现版本之间、或同一类协议不同实现版 本之间、甚至同一协议不同厂商实现之间的互通能力和互连操作能力由于不同 厂商对基于文本描述的协议的理解不尽相同,甚至各国国情的不同( 如s s 7 协议 的d l c i 实现) ,单纯对一个协议的实现进行一致性测试并不能保证一个协议实 现和另一个协议实现之间的成功通信,还需要将协议实现放在一个实际的通信网 络环境中进行测试。在这种测试中,主要检测一个协议实现与其他系统之间交互 作用的过程,因此称为“互操作性测试”。一个协议实现能否通过一致性测试和 互操作性测试是它能否入网与其他系统成功互通的决定性保障。 2 3 2 测试方法 互操作性测试与一致性测试主要区别在于一致性测试只针对于一个i u t 进行 测试,而互操作性测试则需要对两个或多个待测系统进行测试。互操作测试通常 是将一致性测试中所用的测试器换成需要与之互通互操作的设备,选择一些重要 的典型的互连方式配置,观察两设备是否能按照预期正常工作。 9 c d m a 2 0 0 0 协议测试平台研究 比如将具备相同协议栈的c d m a 基站相互替换,通过同一标准接口连接不 同厂商的m s c ( m o b i l es w i t c h i n gc e n t e r ) ,验证协议的互操作性。 2 4 性能测试 2 4 1 概述 性能测试是一种信息的收集和分析过程,过程中收集的数据用来预测怎样的 负载水平将耗尽系统资源。性能测试保证程序具有良好的性能,它考察在不同的 用户负载下,s l i t 对用户请求作出的响应情况,以确保将来系统运行的安全性、 可靠性和执行效率。性能测试的主要目的是为维护系统的性能找到有效的改善策 略。 性能测试难以制定统一的标准,因为性能需求与应用领域、实现方式、软硬 件平台紧密结合。同一协议用于孤立节点和中央节点的性能需求可能完全不同, 在不同板卡不同平台上的实现,性能也会相差很多。但是针对特定领域,如w e b 服务器,或者3 g 基站、m s c 等,性能测试需求及测试指标可以相互借鉴与复 用。如测试s u t 的通用性能指标( 数据传输率、联接时间,执行速度、吞吐量、 并发度等 7 - 1 0 ) ,以及由参数化的网络负载模拟框架来模拟接近真实的应用场 景,进行性能测试。 2 4 2 测试方法 类服务器系统的性能可用三种模型来表示:负载模型、性能模型和成本模 型。负载模型描述了由不同类型请求和事务所带来的系统资源要求和系统负载强 度特点。性能模型用来预测响应时间、资源利用率和系统吞吐量。成本模型说明 了软件、硬件、网络通信和支持系统运作所需的其它开销对系统性能的影响。 性能模型提供了性能度量的标准,而标准是由一系列性能指标构成的。典型 的性能度量指标有响应时间、系统吞吐量、延迟测试、丢包率测试、资源利用 率,并发用户数目等1 7 圳】。 f 1 1 响应时间 从用户观点来看,它是从一个请求的发出到客户端收到服务器的响应所经历 的延迟。响应时间是服务质量的重要指标,决定客户申请服务等待时i 日j 的长短, 通常以秒或毫秒等时日j 单位来衡量。一般而言,等待时间与尚未利用的系统容量 0 c d i l a 2 0 0 0 协议测试平台研究 成反比。它随着低程度用户负载的增加而缓慢增加,但一旦系统的某一种或几种 资源已被耗尽,等待时间就会快速地增加。 ( 2 ) 吞吐量 吞吐量是指在某一个特定的时间单位内系统所处理的数据流量。包括语音业 务与数据业务之和。吞吐量测试常常在设计、开发和发布整个周期中的不同阶段 进行测量和分析,在识别性能瓶颈和改进应用和系统性能方面扮演着重要角色。 ( 3 ) 延迟测试 随着3 g 网络的铺设,网络节点设备不仅要支持语音业务,还要增加高速数 据业务的处理。图像和视频己逐渐成为3 g 网络传输的重要内容,而这些应用对 时间有敏感性,要求整个网络延迟要小,延迟抖动要尽量低。因此,对延迟性测 试的要求比较迫切。 ( 4 ) 丢包率测试 3 g 网络大规模迁移到口骨干网络,并提供更高质量的语音、更快速的多媒。 体数据业务,以u d p 为承载的数据传输可能会出现丢包。如通过某设备的数据 流可能会出现突发增加或满负荷的情况,此时如何处理报文,以及其性能如何变 f 化,可通过丢包率来描述。 ( 5 ) 资源利用率 资源利用率是指系统不同资源的使用程度,比如服务器的c p u ,内存,网络 带宽等等。它常常用占资源的最大可用量的百分比来衡量 ( 6 ) 并发用户数目 并发用户数目是指在某一给定时间内,在某个特定站点上进行公开会话的用 户数目。当并发用户数目增加,系统资源利用率也将增加。并发性能测试的目的 主要体现在三个方面:以真实的业务为依据,选择有代表性的、关键的业务操作 设计测试案例,以评价系统的当前性能。 c i ) 砌, 2 0 0 0 协议测试平台研究 3 测试集生成理论综述 3 1 测试集生成概述 测试集的生成是一致性测试的第一个阶段。测试集是一组关于协议测试步骤 和测试数据的文件。每一个测试集都有固定的层次,依次是测试组、测试例、测 试步、测试事件。其中最关键的一级是测试用例,每一个测试用例都有自己的测 试目标,如检查1 u t 是否满足特定的能力( 如支持某种消息格式) ,或展现出特定 的行为序列( 如在特定的状态出现特定的事件) ,并根据i u t 的响应对其行为作出 判决,得出结果。多个测试案例可以构成测试组,每个测试组都有与之相联系的 测试目的,它是所有构成测试案例的测试目的的集合。测试案例还可以由模块结 构测试步组成,每个测试步又包括几个测试事件,而测试事件才是测试集中不可 分的单元。 从测试角度来看,测试集的设计和生成是影响测试的重要因素。测试集生成 的方式有两种:基于形式化模型的自动生成方式和基于测试目的的生成方式。前 者由形式化协议描述语言,如f s m 、s d l 、m s c 等,依据规则自动生成,可以 将测试人员从手工编写大量测试集的工作中解放出来,集中精力关键部分;后者 由测试人员手工编写,测试目的及测试数据更为准确可控,可用做协议特殊场景 的测试。理想的测试集应为两种方式互补:形式化模型自动生成测试集针对协议 正常情况及一般错误处理时的测试;基于测试目的的手工编写测试集针对s u t 特殊场景的测试。 3 2 基于t t c n - 3 的测试集描述 3 2 1t t c n - - 3 概述 作为协议一致性的测试数据,测试集在整个一致性测试过程中始终发挥着极 其重要的角色。尽可能的用形式化的方法描述测试集是非常必要的。每个抽象测 试集都对应于一种抽象测试方法,要视被测i u t 的可访问性而定。标准抽象测试 集应该使用一种严格定义的,独立于任何实现的测试表示方法柬描述。i s o 一9 6 4 6 推荐了一种半形式化的语言,树表结合表示法( t t c n ) 【1 4 - 1 6 ,它有严格的b n f 语 c d m a 2 0 0 0 协议测试平台研究 法定义及语义定义,使用t t c n 进行测试集描述增加了抽象测试集的标准性、通 用性和可交换性。使用t t c n 描述的测试集具有层次化的组织结构,测试集( t e s t 戳l i t e ) 的元素为测试例( t e s tc a s e ) ,一个测试例描述一组测试步( t e s ts t e p ) 验证一 个测试目的或一个一致性需求。相关的测试例被集合成为一组,组可以有多个层 次,每个组都有相应的目标。在一个测试例中,又可化分为测试步和测试事件。 一个测试事件是在p c o 上发生的一个交互动作,如发送或接收一个p d u ,而测 试步是连续的测试事件,如p r e a m b l e ( 前缀) ,p o s t a m b l e ( 后缀) 便都是测试步 树型表示法和表型表示法都具备易于被测试人员所理解的优点,国际标准化 组织选择了这二者的组合形式:树表结合表示法t t c n ( t r e ea n dt a b u l a rc o m b i n e d n o t a t i o n ) ,来描述测试集,与其它方法相比较,t t c n 具有如下的优点: 非常易于理解和学习; 专用于测试集的描述,非常方便和灵活; 完全独立于任何特定的测试系统; 非常擅长数据值的描述。 为了满足对测试表示方法的要求,t t c n 的测试集被定义为一个由静态说明 部分和动态行为描述部分组成的整体其静态说明部分专用于协议的静态信息描 , 述,如协议数据单元和抽象服务原语的格式和参数值,为了支持标准化的一致性 测试方法和框架,t t c n 还支持p c o 、定时器、测试集变量和测试集常量的描 述。在动态行为描述部分,t t c n 语言提供了与消息的接收和发送相关联的操作 与操作符。唰作为一种测试表示方法,完全满足了i s 0 9 6 4 6 - 2 中对测试集描 述语言的需求 c i 瑚a 2 0 0 0 协议测试平台研究 图4t t c n - 3 测试器的一般模型 现有的测试执行方法可以划分为两类:基于编译的测试执行( c t e :c o m p i l i n g - b a s e dt e s te x e c u t i o n ) 和基于解释的测试执行( i t e :i n t e r p r e t i n g - b a s e dt e s t e x e c u t i o n ) 。 在基于解释的测试执行中,从a t s 到e t s 的转换是在测试执行过程中完成 的。这种方法使得测试执行的效率并不很高,但是却使得用户可以对测试过程进 行动态的观察与控制。与c t e 相比,i t e 有着不同的测试执行过程。在c t e 中,执行器只是简单地通过调用每个己经编译好的测试例来执行测试;但是在i t e 中,测试器和解释器是一同工作的,逐个对测试例进行解释和执行。所以在i t e 中,可执行测试例只有在测试过程中才存在对于一个测试例,i t e1 烦序地读 入测试事件,编码并执行此测试事件,接收响应的p d u a s p 解码并将接收到的 p d u a s p 与测试例中的内容相比较,以确定下一个要执行的测试步。 在基于编译的测试执行中,可执行的机器码是由许多独立的测试例组成,它 可以象一个已经编译过的过程一样被测试器所调用。由抽象测试集( a t s ) 到可执 行测试集( e t s ) 的转换是由转换器或编译器在测试执行之前完成的。这一过程是 比较费时的,但是对于测试执行来讲却是非常有效的。 4 c d m a 2 0 0 0 协议测试平台研究 3 2 3t t c n 一3 核心语言 t t c n - 3 规范包括六个部分,分别是:核心语言,表格表不格式,图形表不格 式,操作语义,运行期接口和控制接口。它详细定义了一套核心语言,核心语言 的两种表达格式,以及操作语义和运行期接日。t t c n - 3 在语言上进行了简化, 但是在功能上却得到增强,并日适用十更多的应用场合,比如协议一致性测 试,a p i 测试,互操作性测试,实时系统测试等等【悼1 6 1 。 图5 t t c n - 3 规范 t t c n 3 规范的第一部分对其核心语言进行了定义,这些定义包括语言基本 要素,数据类型,模块,模板,操作符,函数等等。t t c n 3 核心语言有三个用 途。首先,核心语言可以用作一般的基于文本的测试描述语言;其次,它可以用 在t t c n 测试工具之间作为一种标准化交换格式;最后,核心语言为各种不同的 表不形式提供语义基础。 使用t t c n 3 语言的测试集是用测试组( t e s ts u i t e ) 、模块( m o d u l e ) 、测试例 ( t e s tc a s e ) 、和函数( f u n c t i o n s ) 为组织形式的。一个t t c n - 3 测试组的最高级别是 模块。一个模块是一个自包含的完整规范说明,可以单独地对它进行语法分析和 编译。模块包括模块定义部分和控制部分模块定义部分包括对测试组件( t e s t c o m p o n e n t ) 、通信接口( p o r t ) 、类型( t y p e ) 、测试数据模扳( t e s td a t at e m p l a t e ) , 函数和测试例的定义。模块控制部分调用测试例,并描述测试的过程。这部分的 语句和其它编程语言类似,它们用来指定测试例的选择和执行顺序。 c d m a 2 0 0 0 协议测试平台研究 3 2 3t t c n - 3 构成 对应于标准的一致性测试方法和框架,使用t t c n 描述的测试集由四部分构 成,分别是:测试集概述部分( t e s ts u i t eo v e r v i e w ) 、说明部分( d e c l a r a t i o n s p a r t ) 、约束部分( c o 璐仃面n t sp 和动态行为部分( d ”锄i cb e h a v i o rp a r t ) 9 1 。 ( 1 ) 测试集概述部分 这一部分定义了测试集的名称和测试集所对应的被测协议标准、p i c s ( 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 ) 、p i x i t ( p r o t o c o l i m p l e m e n t a t i o ne x t r a l n f o r m a t i o nf o r t e s t i n g ) 以及所使用的测试方法。除了这些 信息之外,测试集概述部分还包括三张内容索引表,分别用于索引构成测试集动 态行为描述部分的三个测试行为描述库;测试例库、测试步库和缺省步库。内容 索引表中的每一项包含以下几条信息:标识符,用于在整个测试集中标识一个测 试例、测试步或者缺省步;该测试行为描述在测试集中所处的位置;该测试行为 的测试目的。测试例库由若干测试组构成,而每个测试组又是由许多测试例组 成。每个测试例可以使用指定的测试步,测试步又可以像测试例那样以组的形式 构成测试步库。有时,一个测试步会在不同的地方多次使用,为了简化描述,引 入了缺省测试行为描述的机制,这些缺省行为描述也可以以组的形式构成缺省步 库。 ( 2 ) 说明部分 一个抽象测试集中包含各种类型的对象,如定时器、p c o ,p d u 和a s p 等 等,对这些对象进行说明是t t c n 抽象测试集说明部分的主要工作。这些说明提 供了测试集中所引用到所有对象的名称、类型、取值范围等信息。主要包括测试 套中使用的数据类型的定义、变量和常量定义、测试套操作定义、p c o ,c p 和 t i m e r 定义、测试组件定义以及测试组件配置信息。 ( 3 ) 约束部分 抽象测试集的限制部分用来定义协议数据单元( p d u ) 中各个域或抽象服务原 语( a s p ) 各个参数的各种特定取值,用于在测试集的动态行为部分描述部分对测 试事件进行限制,以简化测试事件的描述。 ( 4 ) 动态行为描述部分 1 6 c d m a 2 0 0 0 协议测试平台研究 动态行为描述部分是t t c n 抽象测试集的主体部分。它包含三个库,即测试 例库、测试步库和缺省步库。每个库由多个动态行为描述表组成。下表为一个测 试例的动态行为描述表格,其中包含了测试例的标识,它在测试集中的位置,测 试目的,以及该测试例的缺省测试行为树的标识。测试步和缺省步的表格与此表 类似。 t e s tc a md 】愀b e h a v i t e s tc a s en a m e r e f e t e a m c m 斟,“蜘 1 掇r e m o r a d c 囱# 扭r e f e 摊l o e d 瞄孵p 毫l o n l a b e lb e h a v i埘d 嚣四i p d o nc 4 m 州n t s 乳e fv e r d i c tc m ,抽嫩i i 2 在动态行为表中,在p c o 处发生的测试事件是在“行为描述”列中用一系 列t t c n 语句描述的。处于同一缩进的语句属于选择执行的关系,而缩进递增的。, 语句与它前面的语句属于顺序执行关系。这种以缩进为基础的表示方法简单清晰 的给出了各个语句之间的时序关系。测试判决位于这种树型表示的叶子节点处。 在执行测试行为树的时候,选择关系的语句中哪一个得到执行依赖于当时执 行器的状态和各个p c o 处发生的钡四试事件。如果多个选择语句可以发生,则 认为第一条选择语句成功执行。由执行器发起的发送事件,始终是立即执行的: 而接收事件的成功执行要等到执行器接收到与语句中描述的相符合的测试事件才 行当一个语句成功执行后,执行器会进入其后继测试语句的执行。 动态行为表中还包括以下的内容:测试判决列记录了对各种测试结果的判 决,有最终判决p a s s ,f a i l ;i n c o n c l u s i v e 。限制索引列给出了该测试事件 中所使用的p d u 或a s p 的具体取值在限制说明

温馨提示

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

评论

0/150

提交评论