




已阅读5页,还剩62页未读, 继续免费阅读
(计算机应用技术专业论文)多端口并发测试定义语言及其编译器的研究与设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西南交通大学硕士研究生学位论文第1 页 摘要 i s 0 9 6 4 6 中定义的针对路由器的测试方法已经不能满足多端口并发测试 需要,为此,四川省网络通信重点实验室开展了对路由器多端口测试技术的 研究工作,包括定义“多端口路由器并发穿越测试法”( 1 v n r c - r r m m u l t i p o r tr o u t e rc o n c u r r e n tt r a n s v e r s et e s tm e t h o d ) 、“多端口并发测试定义 语言”0 v n , c t d l m u l t i p o r tc o n c u r r e n tt e s td e f i n i t i o nl a n g u a g e ) ,和开发“分 布式多端口并发测试系统”( d m c ,t s d i s t r i b u t e dm u l t i p o r tc o n c u r r e n tt e s t s y s t e m ) 。d m c - t s 由两部分组成:并发测试部分和多个双端口测试器部分, 前者又可分为多端口并发测试控制器( m p c t c m u l t i p o r tc o n c u r r e n tt e s t c o n t r o l l e r l 和并发测试例支撑工具( 如m p c t d l 编译器) 。本论文反映的工 作是并发测试例支撑工具,即m p c t d l 及其编译器。 由于i s o9 6 4 6 中定义的测试描述语言t r c n ( t r e ea n dt a b l ec o m b i n e d n o t a t i o n ) 是面向单线程测试的,因此要描述多线程测试就需要多端口并发测 试定义语言。本文提到的m p c r d l 是在其前一版本没有明确定义系统详细 需求的情况下而定义的。对m p c r d l 的基本需求分为两类:并发测试控制( 并 发测试线程间的协调和同步1 功能需求和路由器双端口宏观行为描述功能需 求。 本文的主要工作包括以下几点: a ) m r - c t d l 的需求分析。 b ) 设计m p c t d l 框架,重点研究并发测试控制功能。 c 1 探讨通过编译方式把m p c t d l 定义的测试例转换为机器语言( 如 c c + + ) 的可行性。 m 通过用m p - c r d 编写并发测试示例来模拟测试过程,建立测试实验 环境,验证编译方式的可操作性。 论文的实验结果表明所定义的m p c t d l 语言及其部分编译功能达到了 原设计目标,为后续开发工作奠定了基础。作为多端口并发测试管理器的测 试支撑工具,m p - c t d l 编译器为并发测试例编译和系统调试提供了初步手 段。由于时间有限,双端口测试过程中的测试例宏观描述功能有待今后进一 步去研究。 关键词:分布式多端口并发测试系统;多端口并发测试定义语言;多端口并 发测试控制器:编译器 蓖南交通大学硕士研究生学位论文第1 i 页 a b s t r a c t t h ei n a d e q u a c yo ft e s tm e t h o d o l o g yd e f i n e di ni s o9 6 4 6h a ss p u r r e dt h e r e s e a r c hw o r kc a r r i e do u ta ts c - n e t c o ml a bo nm u l t i p o r tr o u t e rt e s t i n g t h i s p r o j e c t i n v o l v e sd e f m i t i o no fm p r c t t n i ( m u l t i - p o r tr o u t e rc o n c u r r e n t t r a u s v e r s et c s tm e t h o d ) a n dm p - c t d l ( m u l t i p o r tc o n c u r r e n tt e s td e f i n i t i o n l a n g u a g e ) ,a n dd e v e l o p m e n to fd m c - t s ( d i s t r i b u t e dm u l t i - p o r tc o n c u r r e n tt e s t s y s t e m ) t h ed m c - t si sf o r m e do ft w op a r t s :c o n c u r r e n tt e s tp a r ta n dm u l t i p l e t p t ( t w op o r tt e s t e r ) t h ef o r m e rc a nf u r t h e rd e c o m p o s e di n t ot h em p c t c ( m u l t i p o r tc o n c u r r e n tt e s tc o n t r o l l e r ) a n dac o n c u r r e n tt e s tc a s es u p p o r tt o o l ,i e m p c t d lc o m p i l e r t h i st h e s i si sd e d i c a t e dt on i p c i d la n di t sc o m p i l e r t h em u l t i - p o r tt e s td e f i n i t i o nl a n g u a g ei sn e e d e dt os p e c i f ym u l t i t h r e a dt e s t s s i n c et h et e s ts p e c i f i c a t i o nl a n g u a g et f c n ( t r e ea n dt a b l ec o m b i n e dn o t a t i o n ) s p e c i f i e db yi s o9 6 4 6i ss i n g l et e s tt h r e a do r i e n t e d t h em p c t d lp r e s e n t e di n t h i sd i s s e r t a t i o nw a se v o l v e df r o map r e v i o u sv e r s i o nd e f i n e dw h e nt h ee x a c t r e q u i r e m e n t sw e r en o tv e r yc l e a tt h eb a s i cr e q u i r e m e n t sf o rm p - c t d l c 妞b e c l a s s i f i e di n t ot w ot y p e s :f u n c t i o n sf o rc o n c u r r e n tt e s tc o n t r o l ( c o o r d i n a t i o na n d s y n c h r o n i z a t i o na m o n gc o n c u r r e n tt e s tt h r e a d s ) a n dt h o s e t o s p e c i f ym a c r o b e h a v i o ro fap a i ro fp o r t so far o u t e r , t h em a j o rw o r kp r e s e n t e di l lt h ed i s s e r t a t i o ni n c l u d e s : 小r e q u i r e m e n t sa n a l y s i so fm p c t d l t o p r o v i d e af r a m e w o r ko fm p c t d lw i t ha ne m p h a s i so nc o n c u r r e n tt e s t c o n t r o lf u n c t i o n s c ) t oe x p l o r et h ep o s s i b i f i t yo fc o m p i l i n gt h em p - c t d ls p e c i f i e dt e s tc a s e i n t oah o s tl a n g u a g e ( e g c c + + ) d ) t os e tu pat e s te x p e r i m e n te n v i r o n m e n te m u l a t i n gt h et e s tp r o c e s sb yu s e o fe x a m p l et e s tc a s e c o m p i l e df r o mm p - c t d lt o d e m o n s t r a t ei t s o p e r a b i l i t y t h ee x p e r i m e n tp r e s e n t e di nt h ed i s s e r t a t i o nh a ss h o w nt h a tt h em p c t d l a n di t sp a r t i a lc o m p i l i n gf u n c t i o n sm e e tt h ed e s i g nt a r g e t sa n dp r o v i d e sab a s i sf o r f u r t h e rd e v e l o p m e n t a st h et e s tc a s es u p p o r tt o o l so fm p c - t s t ( m u l t i - p o r t c o n c u r r e n tt e s tm a n a g e r ) ,t h em p c y d lc o m p i l e rp r o v i d e sap r e l i m i n a r yt o o l 西南交通大学硕士研究生学位论文第l ii 页 f o rc o m p i l i n g c o n c u r r e n tt e s tg a s e sa n df o rs y s t e md e b u g g i n g i nt h el i m i t e dt i m e , f u n c t i o n sf o rm a c r od e s c r i p t i o no ft e s tc a 8 ef o rt w o p o r tt e s t i n ga r el e f tf o rf u r t h e r s t u d y k e yw o r d s :d i s t r i b u t e dm u l t i - p o r tc o n c u r r e n tt e s ts y s t e m ( d m c - t s ) ,m u l t i - p o r t c o n c u r r e n tt e s td e f i n i t i o nl a n g u a g e ( m p - c t d l ) ,m u l t i p o r tc o n c u r r e n tt e s t c o n t r o l l e r ( m p c - t c ) , c o m p i l e r 西南交通大学硕士研究生学位论文第v ii 页 本文部分术语缩写的中英文对照表 d m c t s m 吧c t d l t t c n - 3 e 册c n 3 e r m t t m m 呼c t t m m p c t c m 吧c t - c m p t p t d i s t r i b u t e dm u l t i - p o r tc o n c u r r e n tt e s ts y s t e m 分布式多端口并发测试系统 m u l t i - p o r tc o n c u r r e n tt e s td e f i n i t i o nl a n g u a g e 多端口并发测试定义语言 t r e ea n dt a b l ec o m b i n e dn o t a t i o nv e r s i o n3 树表结合的测试控制数据描述语言第3 版 e x t e n d e dt r :n 3 扩展的t t c n 3 l o o p - b a c kt e s tm e t h o d 回绕测试法 t r a n s v e r s et e s tm e t h o d 穿越测试法 m u l t i p o r tc o n c u r r e n tt r a n s v e r s et e s tm e t h o d 多端口并发穿越测试法 m u l t i p o r tc o n c u r r e n tt e s t e rc o n t r o l l e r 多端口并发测试控制器 m u l t i p o r tc o n c u r r e n tt e s t i n gc o o r d i n a t i o n m a n a g e m e n tp r o t o c o l 多端口并发测试协调管理协议 t w o p o r tt e s t e r 双端口测试器 西南交通大学硕士研究生学位论文第1 页 1 1 本论文的研究背景 第1 章绪论 工作在网络层的路由器是完成不同网络之间的数据存储、分组和转发, 实现网络互联的核心设备。路由器能否正确可靠的工作,直接关系到整个网 络能否正常运转,因此对以i p v 6 1 为基础的路由器产品进行相关的测试技术 研究就具有特殊的意义。长期以来,路由器测试一直沿用i s o9 6 4 6 t 2 j 规定的 两种标准测试方法,即回绕测试法( l t m l o o p b a c k t e s tm e t h o d ) 和穿越测 试法( t r i t r a n s v e r s et e s tm e t h o d ) 1 划。但是,这两种测试方法都是通过单机 架构完成,只能针对路由器的单个或单对端口进行简单的协议一致性测试。 然而目前广泛使用的高性能路由器一般具有几十甚至上百个端口,每个 端口的吞吐量为g b p s 数量级且整机吞吐量达到数百g b p s 甚至更高,而且在 稳定性、可靠性和安全性上都有更高的要求。因此,仅通过对单个或单对端 口进行一致性测试来判断多端口设备的协议行为,缺少对端口间相互影响的 测试控制能力,其测试结果将很难令人信服。虽然i s o9 6 4 6 允许在同一测试 系统中设置多个多对测试器进行并行测试,但相关文本缺少对并行测试间关 系的界定,更缺少并行测试控制数据描述语言。为此,四川省网络通信重点 实验室提出了“多端口并发穿越测试法”( m p c - t t m m u l t i - p o r tc o n c u r r e n t t r a n s v e r s e t e s tm e t h o d ) 、“多端口并发测试定义语言”( m p c t d l - m u l t i p o r t c o n c u r r e n t t e s t d e f m i t i o n l a n g u a g e ) ,并在此基础上开发出了“分布式多端口 并发测试系统”( d m c t s - d i s t r i b u t e dm u l t i - p o r tc o n c u r r e n tt e s ts y s t e m ) , 系统结构如图1 - 1 所示。 从图中我们可以看出,d m c i s 主要由两部分组成,即上层的“并发测 试部分”和下层的“多个双端口测试器部分”( t p t t w op o r tt e s t e r ) 。其中 上层又由多端口并发测试控制器( m p c - t c m u l t i - p o r tc o n c u r r e n tt e s t c o n t r o l l e r ) 和并发测试例支撑工具( 如m p 。c t d l m p - c t d l 编译器) 组成, 下层由双端口测试器和双端口测试例支撑工具( 如e t t c n 3 e t t c n 3 编译 器) 组成。m p c t c 和t p t 为物理上独立的设备,可在p c 上实现,二者问 利用交换机实现高速互联。上下两级通过专用通信协议“多端口并发测试协 调管理协议”( m p c t c c m p m u l t i p o r tc o n c u r r e n tt e s t i n gc o o r d i n a t i o n & 西南交通大学硕士研究生学位论文第2 页 m a n a g e m e n tp r o t o c 0 1 ) i 埘实现通信,因此都有相同接1 :3 模块“并发一双端i = l 管 理 m p c 结用测 i i 果 l 户 l 试 l 掣 t c 记接管 多端 录 口 理 单测试例抽 模模模 = f 亍模块 口并块 块块 , r 发铡 并发一双端口管理器接 i 鲥瓦酬f d l 季 哒垡 口模块 4 钿d 译器 i 4 1 i : 4 1 , t p t 并发- 双靖口管理器接 口黻 l i t p r 可执行测 b _一f _ , - - t t c i q 3 i 双端 |。 用 一- l 测 试集组倒弋卜。 1编译器 l 口测 结 l 户试 ( 单测试倒执 果 抒器、编解码 亩 试器 记接管,1 a器都被联合 录口理、广编译后成可 模模模 飘仃罚佤佣一 块块块 谜的抽象铡| l 饲l p 一 并发潮试系统i 测试支撑工具一 图1 - 1 :分布式多端口并发测试系统及其支撑环境功能框图 测试支撑工具是由测试控制数据描述语言本身和将用该语言描述的测试 控制数据转换为测试系统可执行的测试控制数据的转换工具组成。图中测试 语言分为两层,上层负责专门描述测试控制器与多个双端口测试器之间的协 调和同步,由m p c t d l 来实现;下层负责具体的测试执行,由e - t t c n 3 i l l 来实现。e 玎r c n 3 是在t t c n 3 的基础上进行部分功能扩展而设计的,用以 保证和上层描述语言之间保持一致性。这样的分层有助于把复杂的具体测试 行为描述和宏观的控制协调区别开来,使对协调控制的描述更集中更有针对 性,也更简洁。m p c i t ) l 也是一种宏观描述语言,主要提供并发测试控制( 并 发测试线程间的协调和同步) 功能和路由器双端口宏观行为描述功能。 m p c t d l 编译器将用m p c t d l 描述的并发测试控制数据编译成目标代码 ( c c + + ) 后,再利用c 编译器进行c 编译,最终形成可执行的并发测试例 西南交通大学硕士研究生学位论文第3 页 测试代码。 本论文研究对象是d m c t s 中的m p c t d l 及其编译器。 1 2 国内外研究现状 目前国内外有不少的科研机构及网络设备生产厂商在对路由器多端口测 试技术进行相关的研究和开发。 国外在测试技术研究主要集中在一些公司,如:a g i l e n t 公司、n e t c o m 公 司( t 3 1 等为代表开发了一些网络协议测试仪器和系统。a g i l e n t 推出的安网络分 析仪系统在一个架构中融合了许多接入技术测量功能。它可以在低层局域网 或广域网技术上,全面统一地测试网络,完成高层性能测量和协议分析。该 系统的本地分析仪和远程分析仪实现了时钟同步化。其代表产品 r o u t e r t e s t e r 9 0 0 路由器测试仪能够验证多协议标签交换部署,可以完成对路 由器的性能测试。n e t c o m 公司以s m a r t b i t s 路由器测试系统为代表,能实现 一致性和性能测试。 国内在测试技术研究上比较具有代表性的主要是中国科学院计算技术研 究所【1 4 l 和清华大学 l s l 。这两家单位的研究工作也都是集中在测试系统的开发 上,并先后开发了各自的i p v 6 测试系统。清华大学网络实验室克服传统t r c n 不能支持并发行为描述的缺点,提出了并发t r c n 的概念,并在此基础上设 计了一个并发t t c n 测试执行器来进行并行测试。目前相关的工作还在进行 当中。 1 3 本论文反映的研究工作与笔者的主要贡献 1 3 i 本论文反映的研究工作 实验室开发的d m c - t s 是由物理上分离的多个测试部件组成的两级结构 的测试系统,即m p c t c 和多n 叮,相应的测试支撑工具也分为两级,即 m p c t d l c o m p i l e r 和e t r c n 3 c o m p i l e r 。在这一系统开发背景下,笔者的 研究与开发工作具体包括: 关于多端口并发测试定义语言的研究 分析第一版本并发描述语言c m p t d u c o n c u r r e n tm u l t i p o r tt e s t d e f i n i t i o nl a n g u a g e ) 存在的不足; 依据以上分析说明改进c m e t d l 的必要性,并详细分析m p c t d l 西南交通大学硕士研究生学位论文第4 页 的功能需求; 根据上述分析,对各种功能进行详细定义,重点完成并发测试控制 功能的定义; 定义语言框架、基本结构及语义规则; o 关于m p a m l 编译器的研究 研究编译原理和技术,探讨通过编译方式把m p c t d l 定义的测试 例转换为机器语言( 如c ,c + + ) 的可行性 完成m p c t d l 编译器的总体设计; 研究词法分析、语法分析及代码生成技术,完成编译器的详细设计, 开发出编译程序: 通过用m p c r d l 编写并发测试示例来模拟测试过程,建立测试实验 环境,编译并发测试示例,验证编译方式的可操作性; 1 3 2 笔者的主要贡献 本论文的主要贡献在于实现了多端口并发测试过程中对并发测试例支撑 工具的需求,完成了多端口并发测试定义语言及其编译器的开发与设计,初 步实验表明所设计的语言及其编译器是可行的,对四川省网络重点实验室的 分布式多端口并发测试系统提供了较好的支持,为整个项目的开发作出了一 定的贡献。 1 4 论文的组织结构 本论文的后续章节主要内容与组织结构如下: 第2 章分析第一版本并发描述语言c m p t d l 的不足,然后介绍多端口 并发测试定义语言功能需求分析。从t p t 宏观描述、并发协调控制过程描述, 测试显示、测试报告生成、测试判定描述等方面分析定义m p c t d l 语言的 必要性,最后给出语言的结构框图。 第3 章介绍笔者的研究工作重点之一:m p c t d l 语言定义。先介绍t p t 宏观描述功能,然后重点定义并发协调控制过程描述功能,最后简要介绍语 言的语义规则及基本结构。 第4 章介绍笔者的研究工作重点之二:m p c t d l 编译器的实现。讨论 了词法、语法和语义分析技术:用l e x 和y a c c 构造词法分析器和语法分 析器的方法;重点讨论代码生成的设计,提出了用特定的语法分析树生成代 西南交通大学硕士研究生学位论文第5 页 码的翻译技术。 第5 章是测试试验,笔者利用所设计的语言及其编译器进行测试试验, 通过对实验结果的分析,初步证实了开发的语言和编译器的是可行的,所设 计的编译程序能够满足测试系统的要求。 最后对论文工作进行总结,并对未来需要进一步完成的工作进行分析和 展望。 西南交通大学硕士研究生学位论文第6 页 第2 章多端口并发测试定义语言总体设计 2 1 概述 t r c l 呵坷( 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 世纪9 0 年代e t s i 、 t 1 r u - t 、i s o 等国际组织制定的用于进行协议一致性测试彻的标准,它是一种 半形式化的测试描述语言,是在协议一致性测试方法和框架标准的第三部分 定义的。2 0 0 1 年6 月,e t s i 发布了t r c n 的最新版本 f f c n 3 t s l ( t h e t e s t i n g a n dt e s tc o n t r o ln o t a t i o nv e r s i o n3 ) 作为新一代协议和软件测试标准。 目前,t r c n 的应用已经不局限于一致性测试中,随着网络应用的扩展, 出现了很多t r c n 无法描述或描述困难的复杂情况,比如对路由器多端口进 行分布式并发测试,这时测试系统中有多个测试器同时工作,这就需求系统 提供严格的协调同步管理机制。尽管t f c n 提供了多对测试过程间的简单信 息交换机制( m e s s a g e ) ,但缺少对所交换信息的格式的定义,也缺少对明确 的需要交换的内容的界定,很难适应多对测试期间的协调同步需要。因此, 为了克服传统t t c n 不能支持并发行为描述的缺点,需要对测试描述语言进 行改进,为此,实验室的宋波博士提出了分布式多端口测试定义语言 ( c m p 佃l ) ,并在其博士论文中详细介绍了该语言。但是,由于时间关系, 宋博士在语言方面的工作主要是分析定义并发语言的必要性,并设计了一个 粗略的框架,并没有对并发测试过程中的具体功能需求进行分析,也没有就 这些功能进行定义。本文引入的多端口并发测试定义语言正是基于c m p t d l 存在的不足而开发的,其实现目标就是完成对路由器多端口并发测试时的并 发性、实时性、同步协调控制等方面进行宏观描述,以扩展对多方测试和性 能测试的支持。 2 2 需求分析 多端口并发测试定义语言是基于实验室正在开发的多端口并发穿越测试 法( m p c - t f m ) 的需求而开发的。本方法旨在通过对路由器所有端口的接入 模拟出路由器各种情况下的实际工作环境,从而使得测试更加全面、完备和 准确。并发穿越测试法由图2 - 1 表示。 从图2 1 可以看出,被测路由器任意多个端口都可以被接入测试系统, 西南交通大学硕士研究生学位论文第7 页 任何一个测试器的两个端口组成一个测试对,通过一方向另一方发送测试命 令和数据,在另一方接收响应,从而获得局部的或中间的测试结果。多个双 端口测试器在一个称为多端口并发测试控制器( m p c - t c ) 部件的控制下进 行测试数据的收发,从而形成一个大的分布式测试系统。在测试过程中, m p c - t c 负责对多个1 1 r r 进行系统配置;根据多端口测试例为n 叮指派相应 图2 - 1 多靖口并发穿越测试法 的双端口测试例;在测试例的执行过程中控制多个并行啊y r 测试进程闻的同 步与协调,控制测试数据的并发性;在并行测试过程中控制多端口测试数据 的显示、并行测试例的静态或动态的选择,根据测试进展为多端口测试下结 论,分析测试结果,生成测试报告,并记录测试日志信息备用户查看。 因此,要在测试系统中运用m p c 硎,就需要m p c - t t m 解决如下问 题:测试器间、测试器与并发测试控制器间的同步和协调控制问题:测 试器开始进行双端口测试时的宏观行为描述问题。由于时间关系,本论文主 要就第一个问题进行讨论,第二个问题待今后再去详细研究。 要解决测试器与测试控制器间的同步和协调控制问题,首先就需要对多 n y r 进行宏观描述,然后通过相关机制来描述并发协调控制过程,达到测试 器间的测试同步和测试控制器对多测试器的协调管理,同时测试过程的记录、 测试结果以及测试同志也需要相应的描述机制。因此,语言的功能需求就可 西南交通大学硕士研究生学位论文第8 页 以分为三个方面,即砸叮的宏观描述功能需求、并发协调控制过程描述功能 需求、并发测试过程中的记录、测试结果以及测试日志功能需求。现在就从 这三个方面分别说明。 2 2 1 对h t 宏观描述的功能需求 如图2 1 所示,田t 在分布式多端口并发测试系统中身兼两职。其一, 当进行单,双端口测试时,n 呵作为独立的测试系统,能够完成对路由器指定 的单端口或双端口的功能测试和协议一致性测试;其二,当进行多端口并发 测试时,m p c - t c 是整个测试系统的中心,负责对多1 1 叮的初始化、测试例 选择、测试任务执行以及测试结果的判定和日志信息的记录,而1 1 p t 作为测 试系统的基础测试组件,属于底层测试器,负责具体测试例的执行,系统的 并发特性是通过对测试组件以及测试组件配置( t e s tc o m p o n e n t c o n f i g u r a t i o n s ) 的描述来体现的i x g l 。测试组件是指在并发测试例中能与其他 测试组件一起并行执行的命令子部分( n a m e x ls u b d i v i s i o n ) ,它有固定个数 ( f i x e d n u m b e r ) 的控制观察点( p o i n t o f c o n t r o la n d o b s e r v a t i o n ) 和固定个 数的协调点( c o o r d i n a t i o np o i n t ) 。测试组件配置是用来描述并发测试例中的 测试组件、p c o 以及c p 的连接关系。因此,并发测试时,要实现m p c t c 对1 1 玎的控制和管理,需要对1 r i y r 进行宏观描述,这样才能识别不同的耵t 。 2 2 2 并发协调控制过程描述的功能需求 并发测试不仅要在语言描述上增加若干语句和对象进行处理,更重要的 是要解决各1 1 y r 和并发测试控制器之间的通信问题以及测试过程的协调控制 问题。由于测试执行部件由一个增至多个,对测试协调过程t c p 提出了更高 的要求,这不仅体现在多个测试部件存在于同一台主机上的情况,还体现在 测试部件分布于不同主机上的情况。如何描述测试过程中m p c t c 与多1 1 y r 之间的协调控制闯题、参数和变量的局部与共享问题、多t 测试例执行的 同步问题以及突发数据的收发问题将成为测试系统能否j 下常工作的关键。与 此同时,考虑到以下几个方面,也需要一种新的语言来描述并发测试过程中 的协调控制问题。 a 同步机制问题 r r c n 虽然引入了并行测试连接阳j 协调点的概念,但并未详细定义同步 的机制,对于像d m c - t s 这样的分布式并发测试系统,需要明确可操作的同 西南交通大学硕士研究生学位论文第9 页 步机制,这样才能够现实并发测试过程中测试控制器对多测试组件的并发协 调管理。 b 多端口测试描述的复杂性 在描述并发测试时,既需要考虑并行测试中的协调关系,同时又需要考 虑单个测试连接的细节,使测试数据的描述十分困难。在描述d m c - t s 中的 测试例时,既要考虑多端口并发测试控制器与双端口测试器之间的管理与同 步、测试行为的同步性和并发性,同时也要考虑测试时的实现细节。此外, 要完成对多端口路由器的性能测试,不仅需要描述定量数据,也需要描述突 发数据以及端口问的测试进程时间关系,实时性要求高,这将使测试例定义 工作交得异常复杂。因此,为了简化测试例定义的难度,可以考虑把语言分 为两层,上层部分负责宏观描述,即负责描述并发多端口测试控制器与双端 口测试器之间的管理与协调、多1 1 y r 测试例同步并发执行的管理与协调;同 时,下层部分负责具体实现细节,即各测试子系统的测试行为的微观描述。 这将有利于将并行测试目的的宏观描述、并行连接间的协调、同步问题的描 述与单个或单对端口的测试过程的详细描述分离,简化测试数据描述的难度。 2 2 3 并发测试中的其他描述的功能需求 多端口并发测试过程中,除了要提供对t p t 的宏观描述和并发协调控制 过程的描述机制外,还需要记录详细测试过程,测试结束后还需要记录测试 日志、统计相关测试指标,对测试结果需要进行分析,对最终的测试要进行 测试判定等等,对这些功能的实现也必须有相关的描述机制。 2 3m p c t d l 语言框架 根据第2 2 节的需求分析,所设计的测试语言框架如图2 2 所示。 图2 2 语言框架图 西南交通大学硕士研究生学位论文第10 页 第3 章m p c t d l 定义 3 1 对呵的宏观定义 3 1 1n 呵定义描述 在进行并发测试时需要启用多个砥r r ,叮在物理位置上可能各不相同, 测试的路由器端口号也各不相同,因此标示n 叮就必须对n 叩的名称、n 叮 的编号、r r 测试端口号等属性进行描述,m p c t d l 中使用关键字1 1 叮来 描述测试器的各种属性。 ,玎可定义如下: t y p e d e fs t r a c t s t r i n gt p tn a m e ; n u m b e r t p t _ n u m b e r ; p o r t p o r t 2 ; 广呵的名字属性, 尸标示盯t 的编号属性 ,标示路由器端口号,每个田t 只能对路由器的单厥端口进行测试, t e s tc a s e * t e s tc 勰ep o i n t ;幸标示指向测试例属性+ , 1 1 p t 其中,p o r t 为m p c t d l 中的关键字,其主要是用来描述路由器端口 属性的,包括p o r t l d ( 端口号) 、a d d r e s s ( 端1 3 地址,包括m 地址和物理地 址1 、p o r t t y p e ( 端 2 1 类型,包括1 0 1 0 0 1 0 0 0 接1 3 、x 2 5 接口、d d n 、帧中 继接口等) 。例如: 要定义如下属性的t p t :物理位置在西南交大,编号1 0 ,测试路由器端 口2 、5 ,端口口地址分别为1 9 2 1 6 8 5 8 1 、1 9 2 1 6 8 5 8 2 ,端口类型均为1 0 0 m 以太网,使用测试例t e s te a s e l ,则可以描述如下: t | p tt p l 二1 = 1 “西南交大”,1 0 ,“2 ,1 9 2 1 6 8 5 8 1 ,1 0 0 m , 51 9 2 1 6 8 5 8 1 , 1 0 0 m ,“t e s t _ e a s e l ”,; 当需要定义多个t p t 时可以描述为: n 吓t p t n = “) , ) , ) ; 3 1 2n 叩执行测试例的描述 并发测试过程中,作为测试组件的n 呵。执行的不是m p c t d l 并发测 西南交通大学硕士研究生学位论文第1 1 页 试例,而是e - t r c n 3 测试例,e - t t c n 3 测试例事先通过m p c t d l 并发测 试例进行指派,这样做的目的就是使系统能够控制各个呵执行测试例时的 并发性和同步性。系统使用关键字e x e c u t e 来实现1 1 吓对测试例的执行,至 于具体的执行过程由e - t r c n 3 语言去描述,这里不再赘述。 e x e c u t e 定义如下: e x e c u t e 测试例名; i 直过该方法调用相应的e - t t c n 3 测试例去执行。 例如: i fo 竹【i 】准备就绪) t h e ne x e c u t e y r 【i 】t e s tc a s e _ p o i n t ; e l s e 测试例执行失败 就是定义l l t i 去执行e t r c n 3 测试例t e s t c a s e _ p o i n t 3 2 并发协调控制过程定义 这部分是定义语言并发测试控制功能的重点。 并发测试系统中各个测试驱动器作为独立的测试子系统分布在局域网络 中,要实现这些测试子系统执行测试例的并发性,完成一个并发测试例的执 行,各子系统之间必须协同工作才能完成。因此,必须要有专门的机制来负 责协调、控制、管理各个测试驱动器,包括对各测试驱动器间的同步管理、 时钟管理和测试行为管理。m p c t d l 最大的特点正在于拥有这样的同步与 管理机制和实时性,这为执行一致性测试和性能测试奠定了基础。通过描述 并发协调控制过程,语言实现了对并发测试过程中的协调管理需求。 m p c t d l 并发协调控制过程主要从以下两个方面来定义 m p t - t c 对耵吓的协调控制。 n 叮执行测试例过程中的并发协调控制。 3 2 1m p c t c 对n y r 的协调控制 m p c - t c 对1 1 r r 的协调控制过程主要分为两个部分:一是系统初始化配 置协调控制。主要工作包括t p t 指定、i p 地址配置、测试端口指定、测试例 指派等。对初始化的控制就是要求各1 1 p t 能够响应m p c t c 发送的配置命令, 根据配置要求诈确进行初始化配置,然后把配置结果返回给控制器,控制器 依掘配置结果做出下一步动作:二是t p t 测试过程协调控制。这部分主要是 西南交通大学硕士研究生学位论文第12 页 通过测试控制器发送控制命令来监控测试器的测试行为,测试器对每个控制 命令做出响应,并执行相应的动作,从而达到控制测试行为的目的,保障测 试顺利进行,直到测试结束,这一阶段是协调控制的重点。 3 2 1 1 系统初始化配置控制 系统初始化配置是在测试前进行的,初始化配置就是对选定的1 1 y r 类型 进行初始赋值,这可以参照3 1 1 节来实现,而对初始化配置过程控制则可以 通过定时器来实现。在m p c t d l 中支持许多定时器操作,这些操作可以用 在测试例、函数以及测试行为中。m p c t d l 通过关键字1 1 m e 来描述定时 器。 1 n m 定义如下: t y p e d e fs t r u c t s t a r t ;,启动定时器+ s t o p ;停止定时器+ r e a d ;广读取定时器经过的时间 r u n n i n g ; 检查定时器是否运行+ t m a e o u t ;,超时时间+ t i m e ; s t a r t 用来指出一个定时器开始运行,定时器的值是非负浮点数( 即大于 等于0 0 ) 。例如: m y t i m e l s t a r t ;p 启动m y t i m e l ,带一个默认的持续时间+ m y t i m e 2 s t a r t ( 2 0 e - 3 ) ;p 启动m y t i m e 2 ,持续时间为2 0 m s + s t o p 用来停止一个正在运行的定时器,当一个定时器停止后,它经过时 间被设置为浮点值零( 0 o ) 。 r e a d 用来取回指定的定时器启动后经过的时间,并把这个时间存储到指 定的变量中去,这个变量的类型是浮点型( f l o a t ) ,例如: f l o a tm y v a r l ; m y v a r :- - m y t i m e l r e a d ;。把m y t i m e l 启动后经过的时间赋值给 m y v a r l | r u n n i n g 用来检查一个定时器启动后有没有超时或者停止。其返回值是 布尔型的。 t i m e o u t 用束检查系统超时时间,其返回值是浮点值,当值为0 0 时表明 系统没有超时。 西南交通大学硕士研究生学位论文第1 3 页 m p c t d l 中初始化配置控制过程描述如下, 当m p c t c 向1 1 y r 发送配置信息后启动定时器,等待1 f 1 叮的响应,如 果定时器不超时,则关闭定时器,并依据1 r i 叮的配置响应结果来判定配置是 否成功,如果配置不成功则重新配置,如果配置成功,n 叮进入测试就绪状 态:如果定时器超时,重发配置信息并将该定时器清零,重新开始计时。系 统在设置定时器的同时,还设置一个计数器。如果m p c - t c 对r r 的配置次 数超过该计数器设定的最大值,则认为需要使用的某个( 或某些) 田r r 发生 故障,这时需要调整选定的双端口测试器,继续配置。如果所有叮都配置 完成,系统进入测试就绪状态,等待测试开始命令,并保存配置结果记录。 至此,初始化配置完成。 3 2 1 2 测试过程控制 测试过程控制主要是通过测试控制器发送控制命令“开始”、“停止”、“暂 停”、“继续”、“同步”来监控各组件的测试行为,从而保障测试顺利进行。 同时,各测试行为问的数据与变量传递,也需要具有可控性。为此,m p c t d l 定义了信号量同步机制。 信号量同步机制就是系统可通过传送信号的方式来实现数据的收发和命 令的传送。该机制类似于操作系统中进程间的通信。它通过w a i t s i g n a l ( 参数 列表) 和s c n d s i g n a l ( 参数列表) 来实现命令和数据的传递。这两个函数需要独 立的进程来运行,一旦信号被捕获,参数列表中的动作马上执行。 d 发送定义为:s e n d s i g n a l ( 命令;优先级;部件1 部件2 部件n l a l 0 。 命令包括:( 至) s t a r t 启动一个组件。 s t o p停止一个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025果品供应合同范本
- 政府与水电合同范本
- 赠送油画的合同范本
- 冰棒售卖合同范本
- 碳化炉采购合同范本
- 淘宝代推广合同范本
- 2025购销合同范本下载
- 本人劳动合同范本
- 店面出租协议合同范本
- 人造石材合同范本
- 2025年9月-2026年1月安全工作安排表
- 2025年事业单位招聘考试建筑类综合能力测试试卷八十二:建筑工程施工监理案例分析八
- 2025年事业单位招聘考试综合类专业能力测试试卷(工程类)-建筑工程施工质量控制
- 2025年教育法学法规试题及答案
- 2025年四川省高考化学试卷真题(含答案解析)
- 2023成都高新未来科技城发展集团有限公司招聘试题及答案解析
- 项目策划工作检查考核表
- 六年级上册数学课件-4.1 圆的周长 |冀教版 (共27张PPT)
- (标准版)康复治疗技术专业《 康复心理学 》课程标准
- 身体六大排毒PPT
- 在职人员报考(统招、在职)研究生申请表
评论
0/150
提交评论