




已阅读5页,还剩64页未读, 继续免费阅读
(计算机科学与技术专业论文)ttcn3测试执行日志的可视化研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:内蒙古大学有权将 学位论文的全部内容或部分保留并向国家有关机构、部门送交学位论文的复印件和磁盘,允 许编入有关数据库进行检索,也可以采用影印、缩印或其他复制手段保存、汇编学位论文。 为保护学院和导师的知识产权,作者在学期间取得的研究成果属于内蒙古大学。作者今后 使用涉及在学期间主要研究内容或研究成果,须征得内蒙古大学就读期间导师的同意;着用 于发表论文;版权单位必须署名为内蒙古大学方可投稿或公开发表。 学论文作者签名:塑鱼 日期: 丝! ! :6 , 指导教师签名:二盟 内蒙古大学硕士学位论文 t t c n 3 测试执行日志的可视化研究与实现 摘要 t t c n 3 是e t s i 提出并维护的一种标准测试描述语言,利用它可以进行 多种通讯领域上的各种系统测试。t t c n 3 的应用已突破传统的网络协议测试 领域,在一些大型的软件测试中得到了成功的应用。日志作为整个测试系统中 。 重要的组成部分,它主要记录测试用例的执行睛况,这使得测试过程中发生的 任何事件都可以找到依据。 本文实现了通过测试执行日志文本信息的可视化处理再现t t c n 3 测试执 行全过程。使用户更清晰,直观的了解整个测试套的执行过程,有助于用户更 好的了解由t t c n 3 描述的抽象测试套的执行过程,并且可以使用户更方便的 查找错误、缺陷和分析测试结果。在获得日志文件的基础上进行提取分析,设 计并实现测试执行日志可视化的整体过程,将整个执行过程以图形化形式再现 在用户面前。本论文主要借助l i n u x 下g t k + g n o m e 技术来实现测试执行日 志可视化的主要部分。将测试执行日志中的关键信息以树状列表形式显示,使 测试执行过程图形化并显示在g t k 窗口的画布中,在此基础上,还包括实现 特定事件触发处理机制,如点击右键查看t t c n 3 源程序等。 t t c n 3 测试执行日志可视化的研究与实现主要包括以下几方面工作:首 先对t l 实体与其它各实体之间的交互进行详细分析;对测试执行过程中生成 的测试执行日志文件的文本格式进行分析,然后提取关键信息;参照标准文档 和提取的关键信息设计相应的图形元素,并创建主要的图形元素;完成t t c n 3 测试执行日志图形可视化的处理函数的定义;实现对文本测试执行日志信息 的显示和测试执行图形可视化的具体事件处理;对测试报告的创建与生成;最 后结合文本信息和图形元素实现测试执行日志的可视化全过程。 关键词:t t c n 3 ,日志,可视化,测试 t t c n 3 测试执行日志的可视化研究与实现 t h er e s e a r c ha n di m p l e m e n t a t i o no ft t c n 3t e s t e x e c u t i o nl o g s u a l i z a t i o n a b s t r a c t t t c n 一3i sak i n do fs t a n d a r dt e s tl a n g u a g e ,w h i c hi sp r o p o s e da n dm a i n t a i n e db ye t s i i tc a n b eu s e dd i f f e r e n ts y s t e mt e s to nav a r i e t yo fc o m m u n i c a t i o n s t h ea p p l i c a t i o no ft t c n 一3h a s b r o k e nt h r o u g ht h et r a d i t i o n a la r e a so fn e t w o r kp r o t o c o lt e s t i n g ,i th a sb e e ns u c c e s s f u l l ya p p l i e di n s o m el a r g e - s c a l es 0 1 a r et e s t i n g l o ga sae s s e n t i a lp a r to ft h ew h o l et e s ts y s t e m ,i ti sm a i n l y r e c o r dt h ee x e c u t i o no ft e s tc a s e ,w h i c hm a k e sa n ye v e n tc a nb ef o u n dt h e i ra c c o r d i n gi nt e s t i n g p r o c e s s t h i st h e s i si m p l e m e n t e dt e s te x e c u t i o nl o gv i s u a l i z a t i o nb yt e x ti n f o r m a t i o no ft e s tl o g ,a n d r e a p p e a r a n c et h ew h o l ep r o c e s so ft t c n 一3t e s te x e c u t i o n s ot h a tu s e i sa r em o r ec l e a ra n di n t u i t i v e u n d e r s t a n dt h ee x e c u t i o np r o c e s so ft h ee n t i r et e s ts u i t e ,a n di th e l pu s e r sb e t t e ru n d e r s t a n de x e c u t e p r o c e s so f a b s t r a c tt e s ts u i t e ( a t s ) t h a ti sd e s c r i b e db yt t c n - 3 ,a n di tc a ne a s i e rf i n de r r o r 8 ,d e f e c t a n da n a l y s i so ft e s tr e s u l t sf o ru s e r t h i st h e s i se x t r a c t i o na n da n a l y s i sb a s e do nt h el o g ,d e s i g n e d a n di m p l e m e n t e dt h ew h o l ep r o c e s sv i s u a l i z a t i o no fe x e c u t i o nl o g g r a p h i c a le x e c u t i o np r o c e s s d i s p l a y e dt ot h eu s e r i nt h i st h e s i s ,u s i n gg t k + g n o m et e c h n o l o g yb a s e do nl i n u x ,a n di t i m p l e m e n tv i s u a l i z a t i o nm a j o rp a r to ft e s te x e c u t i o nl o g k e yi n f o r m a t i o no ft e s te x e c u t i o nl o g s h o u l dd i s p l a yi nat r e el i s tf o r m ,a n dt h et e s te x e c u t i o np r o c e s sw i l ld i s p l a yg r a p h i c a l l yt h ec a n v a s i nt h eg t kw i n d o w o nt h eb a s i s ,t h i st h e s i sa l s oi n c l u d e si m p l e m e n ta s p e c i f i ct r i g g e rm e c h a n i s m , s u c ha sc l i c k i n gt h er i g h tm o u s eb u t t o nv i e wt t c n - 3s o u r c ec o d e ,e t c t t c n 一3t e s te x e c u t i o nl o gv i s u a l i z a t i o na n di m p l e m e n t a t i o no ft h ef o l l o w i n gm a i na s p e c t s : f i r s t ,w ed e t a i l e da n a l y s i st h ei n t e r a c t i o no fb e t w e e nt le n t i t i e sa n do t h e re n t i t i e s ,a n da n a l y z et e x t f o r m a to ft e s te x e c u t i o nl o gf i l et h a ti sg e n e r a t e dd u r i n gt e s te x e c u t i o n ,a n dt h e ne x t r a c tk e y i n f o r m a t i o n ,a n dr e f e r e n c es t a n d a r dd o c u m e n t sa n dt h ee x t r a c tk e yi n f o r m a t i o nt od e s i g ng r a p h i c e l e m e n t , a n dc r e a t et h em a i ng r a p h i ce l e m e n t s a n dc o m p l e t e dh a n d l i n gf u n c t i o nd e 缸。do f t t c n 一3t e s te x e c u t i o ng r a p h i c a lv i s u a l i z a t i o nf u n c t i o n t oa c h i e v e dd i s p l a yt e s te x e c u t i o nl o gt e x t i n f o r m a t i o n ,a n di m p l e m e n t e dt h es p e c i f i ce v e n th a n d l i n go ft e s te x e c u t i o ng r a p h i c a lv i s u a l i z a t i o n t h ec r e a t i o na n dg e n e r a t i o no ft e s tr e p o r t f i n a l l y , t h i st h e s i si m p l e m e n tw h o l ep r o c e s st t c n 一3t e s t e x e c u t i o nl o gv i s u a l i z a t i o n , c o m b i n e d 、j l ,i t l lt e x ti n f o r m a t i o na n dg r a p h i ce l e m e n t s k e y w o r d s :t t c n - 3 ,l o g ,v i s u a l i z a t i o n ,t e s t i n g 内蒙古大学硕士学位论文 目录 摘要i a b s t r a c t i i 目j j 乏i i i 图表目录_ v 第一章引言1 1 1 课题背景及发展应用现状1 1 2 本论文的研究目的和论文结构- 2 第二章t t c n 二3 、g t 刚g n o m e 概述:3 2 1t t c n 3 语言概述:3 2 2t t c n 一3 测试体系结构5 2 3g t m n o m e 开发技术概述6 2 3 1g t k + 开发库概述6 2 3 2g n o m e 概述6 2 3 3g t k 信号与回调函数机制。:。7 2 4 开发环境9 第三章t t c n 3 测试执行文本日志提取与显示分析与设计1 0 3 1t t c n 3 测试执行日志可视化实现流程1 0 3 2t t c n 3 测试执行日志与t c b t l 接口分析1 0 3 2t t c n 3 测试执行日志的提取方法分析1 2 3 2 1 文本型测试执行日志的获得:1 2 3 2 2 测试执行日志的文本格式及关键信息提取1 3 3 3 测试执行日志的列表形式关键信息的显示设计1 4 3 4t t c n 3 测试执行日志关键信息的提取及显示的实现1 6 3 4 1 测试日志的文本格式提取和显示1 6 3 4 2t t c n 3 测试执行日志树状表格显示其它功能实现2 0 第四章t t c n 3 测试执行日志可视化设计与实现2 2 4 1t t c n - 3 测试执行日志图形可视化的数据来源2 2 4 2t t c n 3 测试执行日志图形可视化分析和设计2 2 i i i t t c n 3 测试执行日志的可视化研究与实现 4 2 1 测试执行日志图形可视化的实现思路2 2 , 4 2 2 测试执行日志图形可视化的主界面的实现2 3 4 3t t c n 3 测试执行日志的可视化图形元素设计与实现2 4 4 3 1t t c n 3g f t 表示格式2 4 4 3 2 图形元素的设计。2 6 4 3 3 测试日志图形可视化的图形元素的实现2 7 4 3 4 图形元素与测试执行日志的关联2 7 4 4 测试执行日志图形可视化整体实现2 9 4 5t t c n 3 测试报告的创建与生成3 8 4 5 1 测试报告的分析与设计3 8 4 5 2 测试报告创建与生成实现4 0 4 6 本章总结4 5 第五章i c m p v 6 测试执行日志的可视化4 6 5 1i c m p v 6 测试套说明。4 6 5 2i c m p v 6 测试套测试执行日志可视化过程4 8 第六章总结和未来工作- 。5 2 6 1 本文工作总结j j 一j 5 2 6 2 未来工作展望5 3 参考文献5 4 附勇乏1 5 6 致谢。:5 9 i v 内蒙古大学硕士学位论文 图表目录 图2 1t t c n 3 模块的结构3 图2 2t t c n 3 测试配置概念【l 】。4 图2 3t t c n 3 测试体系结构2 1 5 图2 4 硬件活动、事件与信号三者关系:8 图2 5 构件与信号的继承关系8 图3 1t t c n 3 测试执行日志可视化整体设计流程_ :1 0 图3 2t l 的详细视图【2 】1 1 图3 3t t c n 3 测试执行文本日志的结构1 3 图3 4t t c n 3 测试执行日志文本显示设计结构15 图3 5 测试执行日志文本g t k t r e e v i e w 显示结构1 6 图3 6 测试执行日志文本格式提取与显示流程1 7 图3 7t t c n 3 测试执行日志树状表格显示。1 9 图3 8 测试日志树状表格中鼠标事件处理流程。2 0 图3 9t t c n 3 测试执行日志树状表格鼠标事件2 1 图4 1 关键信息与图形元素的关系2 3 图4 2t t c n 3 测试日志可视化主界面:。:2 4 图4 3t t c n 3 核心语言与g f t 描述的对照关系2 5 表4 1 测试执行日志可视化图形元素2 6 图4 4t t c n 3 测试执行日志可视化设计结构2 8 图4 5t t c n 3 测试执行日志图形可视化整体结构3 0 表4 2t t c n 3 测试执行图形可视化实现相关函数定义3 1 图4 6t t c n 3 测试执行日志图形可视化实现流程3 1 图4 7t t c n 3 测试执行图形可视化界面。3 7 表4 3 测试报告的整体设计结构3 8 图4 8 测试报告创建与生成流程4 0 图4 9 创建测试报告对话框1 2 4 2 图4 1 0 创建测试报告对话框3 :4 3 v 一一t t c n - 3 测试执行日志的可视化研究与实现 二_ 二= - 二二二二= 二_ 一二二_ 一一 图4 1 1 生成测试报告时对x m l 文件数据的读取流程4 4 表5 1i c m p v 6 测试套t t c n 3 源程序4 7 图5 1t t c n 一3 测试执行日志可视化显示图j 4 9 图5 2t t c n 一3 测试执行可视化总体效果图5 0 图5 3 测试报告( h t m l 类型) 5 1 i _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ _ - - _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ _ - _ _ _ _ _ _ - _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ _ 内蒙古大学硕士学位论文 1 1 课题背景及发展应用现状 第一章引言 随着互联网及通讯技术等高新技术的飞速发展,人们在日常生活和工作中,对网络安全 性,通讯工具以及应用软件产品的质量要求也越来越高,因此对于相应的网络协议和软件质 量的测试评估也势在必行。所谓的测试就是对这些相关的网络协议、通讯设备和软件产品等 的安全性,稳定性、和可靠性进行衡量判定以发现其存在的错误和潜在的质量问题,这样对 产品质量的改进起到了很大的帮助,所以测试技术是评估和改进软件质量的重要手段p j 。 t t c n 3 【l - 5 】( t e s t i n ga n dt e s tc o n t r o ln o t a t i o nv e r s i o n3 ) 是欧洲电信标准协会e t s i 提出并 维护的一种应用广泛的标准测试描述语言。t t c n 3 最早是由i s o i e c9 6 4 6 标准中定义的 用于对o s i 的网络协议进行一致性测试的抽象描述语言,然而真正t t c n 一3 典型的应用领 域是移动通讯协议测试、与网络协议相关的各种测试,它还应用于基于c o r b a 的客户服务 平台测试、模组测试及a p i 等相关测试。t t c n 3 并不局限于此,还可应用于其它类型的测 试中,如互操作性测试、负载测试、性能测试等【2 , 1 6 。 对于二个完善的t t c n 3 测试平台开发是一项很复杂的工程,目前国内外虽然已经存在 一些测试平台和测试工具,用户可以购买某些协议的可执行测试套产品,但大部分都是商业 性的。使用t t c n 3 语言进行描述的测试套称为抽象测试套( a t s ,a b s t r a c tt e s ts u i 0 ,它需要 在相应的t t c n 3 测试平台上进行编译为可执行测试套( e t s ,e x e c u t et e s ts u i t ) 才能执行。例 如德国的t e s t i n gt e c h n o l o g i e s 公司开发的t t c n 3 测试平台骶r k b e n c h 【1 8 , 1 1 】和支持分布 式并行测试的t t m e x t l 8 1 ,t e l e l o g i c 开发的t a u t l7 1 ,d a n n e t 的t t c n 3t o o l b o x 2 2 及o p e n e n v i r o n m e n ts o f t w a r e 公司的o p 蝴【l9 1 。目前来看,国内外在学术和工业上对于t t c n 3 的研究主要集中在理论研究、工具开发和应用三个领域。国内也开发出了一些支持t t c n 3 的测试平台和测试工具,典型的是中国科学技术大学开发的l o o n gt e s t i n g 测试平台【2 1 1 ,清 华大学开发的给予t t c n 3 的分布式网络协议测试平台p i t s v 3 【2 1 】,及西南交通大学开发的 应用于路由器测试的分布式多点并发的测试系统【2 1 1 。g 0 4 i t 项目是2 0 0 5 年至2 0 0 8 年,天地 互连,北京邮电大学( b u p t ) 联合欧洲电信研究院( e t s i ) 包括内蒙古大学在内的1 1 个来自欧 洲、中国和巴西的成员单位参与了欧盟科技框架计划第六框架中的测试专项,主要面向未来 的信息技术。目标是使用t t c n 3 技术建立开发低成本、开放、通用的新一代的i p v 6 测试 环境。该项目可以分为两个阶段实现,前者主要是实现了一个i p v 6 协议测试套的集成环 t t c n - 3 测试执行日志的可视化研究与实现 境,而后者是在l i n u x 环境下开发的可执行的测试环境【2 0 础1 。但上述介绍的t t c n 3 测试工 具中大部分都是商业性的,所以真正能用于科研方面的开放性工具很少。并且对于测试执行 过程的可视化研究不是很完善,特别是关于测试日志的可视化研究方面。这也正是本文的目 的所在。 1 2 本论文的研究目的和论文结构 、本文主要是基于t t c n 3 测试执行日志文本文件内容分析基础上设计并实现测试执行日 志的可视化过程。本文的描述及设计都是严格依据t t c n 3 标准来实现的,在t t c n 一3 标准 文档t c i 中已经对测试日志实体t l ( t e s tl o g g i n g ) 进行了定义,测试日志模块t l 将测试过 程中所发生的测试事件以测试日志的形式展示给测试系统用户。本文主要目标是在获得测试 执行日志的基础上,对测试日志进行具体的分析,并提取日志中的关键信息作为测试日志可 视化的数据。本文主要是以i p v 6 协议测试套的测试执行日志文本文件作为实验对象,在其 基础上进行分析,提取文本型日志内容中的关键信息,并进行相应日志记录的图形元素设计 ,并实现将整个测试执行日志记录以图形化的形式显示在用户面前。这样,在这种测试执行 过程图形可视化的显示中使用户在整个视图中可以直观清晰的了解到各模块间的交互过程, 如创建测试成分、启动测试成分,接收数据及定时器启动和超时等操作。 本论文共分为六章。本论文的主要研究背景、国内外的发展状况及论文的研究内容主要 是在第一章中进行阐述;t t c n 3 标准描述语言、相关的测试系统和g t k - + g n o m e 技术概 述将在第二章中介绍;第三章对t t c n 3 测试执行日志的普通文本形式进行关键信息的提 取及对t t c n - 3 标准文档t c i - t l 接口进行分析,并对测试日志关键信息显示进行设计与实 现;整个t t c n 3 测试执行日志可视化过程的主要设计和实现部分将在第四章给予阐述,其 中包括测试执行日志图形可视化的设计与实现,及测试报告的创建与生成;第五章通过一个 实例来说明测试执行日志的可视化过程。最后第六章作为本文的总结和未来工作展望。 2 内蒙古大学硕士学位论文 第二章t t c n 3 、g t 刈g n o m e 概述 2 1t t c n 3 语言概述 t t c n 3 是一种全新的测试描述语言,它使得在所有软件开发领域中使用一个标准化 的、抽象的测试描述语言成为可能。作为抽象描述语言,在语法和语义上与其他高级程序语 言类似,t t c n 3 可以独立于任何平台与实现,它可以转换成c ,c 抖,j a v a 等其它语 言,这也为与t t c n 3 相关的开发工具和集成开发环境的开发保留了足够的空间。t t c n 3 定义了多种表示格式。由e t s i 技术委员会测试和描述方法小组制定e t s i 标准中包括了六 个组成部分,其中包括核心语言、t t c n 3 表格表示格式( t f t ) 、t t c n 3 图形表示格式 ( g f t ) 、t t c n 3 操作语义、t t c n 3 运行接口( t r i ) 、t t c n 3 控制接口( t c i ) 1 1 - 4 。 t t c n 3 基本的结构称为模块单元,在使用t t c n 3 描述一个测试套时,实际上是由一 个或多个模块构成的,而一个模块单元包括模块的定义部分和模块的控制部分,值得注意的 是模块单元中模块控制是可选的。测试套可以通过i m p o r t 语句导入其它已经定义好的模块 定义。模块的定义部分包括常量声明、类型定义、模板声明、端口类型定义、测试成分定 义、模块参数定义、过程特征定义等。t t c n 3 模块的结构图如2 1 所示。 图2 1t t c n 3 模块的结构 f i g u r e 2 1 :t t c n 3m o d u l es t r u c t u r e 3 t t c n 3 测试执行日志的可视化研究与实现 模块的控制部分是可选的,可以包含局部定义、局部实例及实际的测试例的参数、选 择、执行顺序结构的描述等内容,实际上就是描述控制测试例的执行顺序,并且可以重复调 用。模块的控制部分可以通过测试例参数调用测试例从而控制了测试例的执行顺序。模块控 制部分的定义只是局部可见的,并且用户可以通过程序语句来选择和执行测试例。例如,有 关测试数据的类型、常量、特征、模板定义,用于测试配置的测试成分定义和端口定义,有 关测试行为的函数定义、可选步定义和测试例定义。而在控制部分进行调用定义部分定义的 测试例使其按照特定的顺序执行【1 , 8 - 1 0 】。 t t c n 3 支持3 种测试成分:主测试成分( m t c ) 、并行测试成分( p t c ) 和测试系统接口 ( t s i ) 。t t c n 3 描述基本的测试活动是将一个具有一个或多个通信端口的系统看成是一个黑 盒子,并且将其称为被测系统( s u t ) ,t t c n 3 测试配置主要是用来描述并发测试的,它是 由相互连接的一个主测试成分( m t c ) 和多个并行测试成分( p t c ) 组成的。使用并行测试 成分与被测系统的通讯端口建立连接,而主测试成分在每个测试例开始执行时由各自的系统 自行创建,而并行测试成分可以在测试例执行过程中动态的被创建,也可启动及停止多个并 行测试成分。而本文前面提到的被测系统接口也可以看成是一个抽象的测试成分( t s i ) , 它描述了测试系统的行为。而主测试成分与多个不同的并行测试成分之间通过各自的通信端 1 :3 进行交互的整个过程就组成了整个测试活动 2 4 2 5 2 8 1 。如图2 2 所示。 图2 2t t c n 3 测试配置概念【1 】 f i g u r e 2 2 :c o n c e p t u a lv i e wo fat y p i c a lt t c n - 3t e s tc o n f i g u r a t i o n 值得注意的是t t c n 一3 语言中的通讯端口,在t t c n 3 标准文档中,并没有将端口定义 4 内蒙古大学硕士学位论文 为接收数据的队列和发送数据的队列,而是将端口只定义为接收数据的队列,因为端口分为 基于消息的、基于过程的和混合式三种,可以通过在定义端口时设置端口的方向参数( i n 、 o u t 、i n o u t ) 来完成。也就是发送给被测系统或其他测试成分的消息不需要在发送之前进行 缓存,所以端口不需要发送数据队列。 在t t c n 3 中任何一个测试成分执行是否成功可以通过测试判定显示或隐示的来设置。 测试判定的值有n o n e 、p a s s 、f a i l 、i n c o n e 、e r r o r 。其中,n o n e 为初始值,p a s s 表示判定测试 通过,f a i l 则为失败,i n c o n c 表示不确定,e l t o r 为运行时错误,在测试例执行过程中如果一 个测试成分执行过程中发生运行时错误时由系统自动设置为g l t o r 。具体的判定合成规则可 以查看t t c n 3 核心语言标准文档1 笛刀】 2 2t t c n 3 测试体系结构 在标准规范中已经为t t c n 3 测试系统的概念模型进行了描述,主要的实体是由测试执 行( t e ) 、测试管理和配置( t m ) 、成分处理( c h ) 、编码解码( c d ) 、被测系统适配 器( s a ) 、平台适配器( p a ) 和测试日志( t l ) 。其中测试管理和配置实体和测试执行的 接口称为测试控制接口( t c i ) ,测试执行实体与被测系统适配器和平台适配器之间的接口 称为测试运行接口( t r i ) 【2 】。如图2 3 所示。 图2 3t t c n 3 测试体系结构嘲 f i g u r e 2 3 :t t c n 一3t e s ta r c h i t e c t u r e 5 t c i t 砒 h c n 3 测试执行日志的可视化研究与实现 其中t m 实体主要完成全局管理任务,包括用户接口的实现和测试执行的管理。t e 实 体主要负责解释和执行t t c n 3 抽象测试套( a t s ) 。其中t e 又包含了t t c n 3 运行时系 统( t 3 r t s ) 、可执行测试套( e t s ) ,内置的编解码模块( e d s ) 。c h 实体主要负责转 发测试成分的配置和通信操作。c d 实体主要负责在基于消息的通信和基于过程的通信操作 时实现t t c n 3 数据与字节流之间的相互转换。s a 实体的主要任务是适配t t c n 3 测试系 统和被测系统之间所有通信到一个特定的执行平台上,而这些通信可能基于消息的通信或者 是基于过程的通信。p a 实体主要负责实现外部函数和定时器的操作。t c i 包含了t e 和 t m 、t l 、c d 、c h 之间的接口。其中,从图中可以看出除了t e 和t l 实体间的接口函数 完全在t l 实体中实现外,t e 与其它实体之间的接口函数既有在t e 实体中实现的,也有在 适配层实体中实现的。而本文主要关注的就是t l 实体接口的实现部分。 2 3g t k + g n o m e 开发技术概述 2 3 1g t k + 开发库概述 g t k + ( g i m p t o o lk i t ,g i m p 工具包) 是一套跨多平台的用于创造图形用户接1 2 1 的图形 库。g t k + 是基于l g p l 许可协议授权的,g t k + 多用于开发开放源代码软件、自由软件, 甚至可以在商业性软件、非自由的软件中使用它,并且g t k + 不涉及授权费或版权费。它最 初被用于开发通用图片处理程序( g e n e r a li m a g em a n i p u l a t i o np r o g r a m ,g i m p ) ,所以被称为 g i m p 工具包,在g n o m e 中g t k + 得到了广泛应用。g t k + 是在g d k ( g i m pd r a w i n gk i t , g i m p 绘图包) 的基础上创建的。g d k 是对低级窗口函数的包装。后来发展成g t k + 。一般 用g t k 代表软件包和共享库,用g t k + 代表g t k 的图形构件集。尽管g t k + 是使用c 语言 开发的,但它却应用了面向对象技术。并且提供了与不同的面向对象语言的绑定,如c + + ( 矾m ) 、j a v a 等【7 矧。 g k t + 图形库使用一系列称为“构件”的对象来创建应用程序的图形用户接口。提供了 窗h ( g t k w i d g a ) 、标签( g t k l a b e l ) 、命令按钮( g t k b u t t o n ) 、树状列表视图( g t k t r e e v i e w ) 、 笔记本( g t k n o t e b o o k ) 、状态条( g t k s t a t u s b a r ) 等各种不同的构件。使用这些构件可以设计出非 常丰富的用户界面【| 7 1 。 2 3 2g n o m e 概述 g n o m e 是g n un e t w o r ko b j e c tm o d e le n v i r o n m e n t ( g n u 网络对象模型环境) 的缩写。 6 内蒙古大学硕士学位论文 最初目的是创建一种基于应用程序对象的架构,类似于微软公司的o l e 和c o m 技术。 g n o m e 使用的图形库是g t l 针。g n o m e 的界面与k d e 的桌面环境界面是类似的,所以 g n o m e 已经成为大多数l i n u x 发布版本的首选桌面环境f 7 甜】。 在用g t k + 开发g n o m e 的过程中,由于实际需要,在上面的构件基础上,又开发了一 些新构件。一般把这些构件称为g n o m e 构件( 与g t k + 构件相对应) 。这些构件都是g t k + 构件 库的补充,它们提供了许多g t k + 构件没有的功能。从本质上来说,g t k + 构件和g n o m e 构件 是完全类似的东西。g t k 本质上是面向对象的应用程序编程接口( a v i ) 。虽然完全是用c 写 成的,但它仍然是用类和回调函数( 指向函数的指针) 的方法实现的。 本文主要使用了g t k + 开发工具库,并在测试日志可视化时使用到了g n o m e 中的 g n o m e c a n v a s 2 5 】构件。g n o m e c a n v a s 可以用于图像的勾画、图形的显示、小部件的定位等, 它可以用于显示一个图形结构的集合。在视觉方面它是高级的,其设计目的是用于交互式作 用或者动态图形显示的创建。例如它可以显示线段、矩形、圆形、文字,及图片等。 g n o m e c a n v a s 是一个带有容器小构件的窗1 2 1 ,这个容器小构件称为组( g r o u p ) 。通过定义坐标 和尺寸可以像这个组里的添加任意数量的项目( i t e m ) 。而这些项目可以是一些其他小构件, 如按钮,图像,甚至是另外一个容器构件或其他的组。在一个画布上操作项目时,你可以为 项目添加从鼠标或键盘上接收的事件,通过g d k e v e n t 来实现,这样用户可以让画布上的任 意项目执行相应的动作。 2 3 3g t k 信号与回调函数机制 g t k 是一个事件驱动的工具包,这以为着它会在g t k 数中等待事件的触发, 才把控制权转交给适当的函数进行相应的处理。在该m函ai数n0中mgtk可以用标准c 语言定义相 应的应用程序。这与w i n d o w s 上的程序处理是一样的。当事件触发时,事件是与硬件活动 ( 敲键盘、鼠标点击和移动等) 是一一对应的关系,而信号却没有,鼠标单击是一个事件, 并可将其转变成信号,但连续点击两次鼠标键会产生双击信号,这时发生了两个事件但触发 了三个信号。每一个构件要与外界进行通信,如当按下按钮时应用程序不需不断的监听按钮 是否被单击按下,而是当单击事件发生时调用相应的函数处理,这就是回调函数。如下图所 示可以了解事件与信号的关系7 2 4 。 7 t t c n 3 测试执行日志的可视化研究与实现 图2 4 硬件活动、事件与信号三者关系 f i g u r e 2 4 :t h er e l a t i o n s h i pb e t w e e no f h a r d w a r ea c t i v i t i e s ,e v e n t sa n ds i g n a l 控制权的转交是通过“信号 来完成的。这里说所的信号与u n i x 系统中的信号实现不 同。当一个事件发生时,例如点击一下按钮,这是通过点击鼠标键来完成的,而这个按钮作 为一个g t k 构件会发出相对应的信号,这就构成了g t k 的整个工作机制。 每个构件都有相应的消息信号,构件间可以继承相同的消息信号,如每个构件都会触发 “d e s t r o y 信号,而每个构件也可以有它们特有的消息信号,如开关按钮触发的“t o g g l e d 信号。这样通过这些构件的信号机制可以完成一些特定的回调函数处理。可从下图中了解到 g t k 的函数继承关系。 图2 5 构件与信号的继承关系 f i g u r e 2 5 :t h ei n h e r i t a n c er e l a t i o n s h i po f c o m p o n e n ta n ds i g n a l 对窗口对象
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 利用量子场论预测和控制化学反应-洞察及研究
- 影视制作业投资风险预警系统研究-洞察及研究
- 传统音乐在当代的传播途径-洞察及研究
- 工业物联网安全威胁检测与响应-洞察及研究
- 2026届浙江省温州瑞安市新纪元实验学校九年级化学第一学期期中统考试题含解析
- 基于人工智能的邮政服务消费者权益保护技术研究-洞察及研究
- 建筑智能运维策略-洞察及研究
- 2026届四川省南充市广安市广安中学化学九上期中质量跟踪监视试题含解析
- 异构数据流增量处理-洞察及研究
- 光老化与抗氧化策略-洞察及研究
- 2025年中国造影剂行业市场发展监测及投资战略规划研究报告
- 风电场运行管理课件(改)
- 医院医用耗材SPD服务项目投标方案
- 债务重组合同协议书样本
- 杜绝“死亡游戏”(梦回大唐)学生安全主题班会课件
- 人教版七上《峥嵘岁月-美术中的历史》教案
- 《妇产科学》课件-9.2产力异常
- 职工食堂服务(技术方案)
- 金融领域反腐
- 《机械制图(多学时)》中职完整全套教学课件
- 西安交通大学出版小学信息技术五年级上册教案
评论
0/150
提交评论