(计算机科学与技术专业论文)基于agent的web+service测试模型和测试方法研究.pdf_第1页
(计算机科学与技术专业论文)基于agent的web+service测试模型和测试方法研究.pdf_第2页
(计算机科学与技术专业论文)基于agent的web+service测试模型和测试方法研究.pdf_第3页
(计算机科学与技术专业论文)基于agent的web+service测试模型和测试方法研究.pdf_第4页
(计算机科学与技术专业论文)基于agent的web+service测试模型和测试方法研究.pdf_第5页
已阅读5页,还剩82页未读 继续免费阅读

(计算机科学与技术专业论文)基于agent的web+service测试模型和测试方法研究.pdf.pdf 免费下载

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

文档简介

r e s e a r c ho nw e bs e r v i c e t e s t i n gm o d e la n dt e s t i n ga p p r o a c hb a s e d o na g e n t b y l i us h e n g l a n b e ( n a t i o n a lu n i v e r s i t yo fd e f e n s et e c h n o l o g y ) 2 0 0 8 at h e s i ss u b m i t t e di np a r t i a ls a t i s f a c t i o no ft h e r e q u i r e m e n t sf o rt h ed e g r e eo f m a s t e ro fe n g i n e e r i n g l n c o m p u t e rs c i e n c ea n dt e c h n o l o g y i nt h e g r a d u a t es c h o o l o f h u n a n u n i v e r s i t y s u p e r v i s o r a s s o c i a t ep r o f e s s o rl ij u n y i m a y ,2 0 1 1 湖南大学 学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取 得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何 其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献 的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法 律后果由本人承担。 作者签名:s 1 1 隧蕊日期:加1 1 年f 月弓。日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学 校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被 查阅和借阅。本人授权湖南大学可以将本学位论文的全部或部分内容编入 有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编 本学位论文。 本学位论文属于 l 、保密口,在年解密后适用本授权书。 2 、不保密回。 ( 请在以上相应方框内打“、”) 作者签名:朝附蓖日期:加1 1 年s 月弓。日 导师签名:以孛或日期:圳年r 月3 。日 硕上学位论文 摘要 w e bs e r v i c e 由于其松耦合性、独立性和易调用性等特点,近年来在各个领域 得到了广泛的应用。人们对w e bs e r v i c e 的质量要求也越来越高。测试是保证w e b s e r v i c e 质量的有效手段。现有的测试方法不能有效地解决w e bs e r v i c e 异构性和 分布式等难题。 a g e n t 具有自治性、主动性和反应性等特点,能适应分布式环境。本文将a g e n t 技术应用到w 曲s e r v i c e 的测试中,提出了基于a g e n t 的w e bs e r v i c e 测试模型。 该模型依据测试任务的不同,将a g e n t 划分为不同的角色,通过a g e n t 之间相互 协作来完成测试,并对测试任务进行划分与分配来提高测试效率。本文还讨论了 在不同的测试要求下,模型的具体测试流程。对该模型的分析表明,该模型能有 效地解决w e bs e r v i c e 的动态性和分布式结构的测试问题,测试效率较高。 为了提高模型的测试效率,本文提出了一种测试用例自动生成方法。该测试 用例自动生成方法包括测试序列自动生成和测试数据自动生成两部分。 当w e bs e r v i c e 有多个操作时,现有测试用例生成方法需要人工参与,自动 化程度不高,并且没有提出一个规范化的方法。为了解决这些问题,本文分析了 w s d l 文档中的操作之间的联系,研究了查找操作之间联系的方法,构建了一个测 试序列模型用于描述w e bs e r v i c e 中操作之间的关系,在该测试模型序列的基础 上,使用操作序列自动生成算法来生成测试序列。实例研究表明该方法是可行的。 在测试数据自动生成方面,本文对变异测试数据生成方法进行改进,提出了 基于决策表的变异测试数据自动生成方法。该方法先构造w e bs e r v i c e 的合约, 在合约的基础上使用决策表按照策略生成初始测试数据集,然后使用四种合约变 异算子对合约进行变异,在合约和它的变异体上运行测试数据,记录每个测试数 据的杀死合约数,然后使用贪心算法进行选择,得到最终的测试数据集。实验结 果表明,该方法和合约变异测试数据自动生成方法相比,缩小了初始测试集的规 模,减少了合约变异选择的时间,提高了测试效率。 关键词:软件测试;w e bs e r v i c e ;a g e n t ;测试用例;合约变异 i i a b s t r a c t i nr e c e n ty e a r s ,b e c a u s eo fi t sl o o s e l yc o u p l e d ,i n d e p e n d e n t ,e a s y i n v o k e da n d o t h e rf e a t u r e s ,w e bs e r v i c eh a sb e e nw i d e l yu s e di nv a r i o u sf i e l d s t h eq u a l i t y r e q u i r e m e n to fw e bs e r v i c ei ss t r i c t e rt h a nb e f o r e a n dt e s t i n gi sa ne f f e c t i v ew a y t o e n s u r et h eq u a l i t yo fw e bs e r v i c e t h ee x i s t i n gt e s t i n gm e t h o d sc a n ts o l v et h e p r o b l e mo f t h eh e t e r o g e n e o u sa n dd i s t r i b u t e dc h a r a c t e r so fw e bs e r v i c ed i r e c t l y a g e n th a ss o m ec h a r a c t e r i s t i c s ,s u c ha sa u t o n o m y , i n i t i a t i v e ,r e a c t i v i t y , w h i c h c a na d a p tt ot h ed i s t r i b u t e de n v i r o n m e n t t h ea g e n tt e c h n o l o g yi su s e di nw e bs e r v i c e t e s t i n gi nt h i st h e s i s ,a n daw e bs e r v i c et e s t i n gm o d e lb a s e do na g e n ti sp r o p o s e d a c c o d i n gt ot h ed i f f e r e n tw o r k s ,t h ea g e n t sa r ed i v i d e di n t o d i f f e r e n tr o l e si n t h i s m o d e l ,a n da g e n tc o u l dc o m p l e t et h et e s tw o r kb yc o o p e r a t i n gw i t ho t h e ra g e n t s t h i s m o d e la l s oc a ni m p r o v et h et e s te f f i c i e n c yb yd e c o m p o s i n g ,d i s t r i b u t i n gt h et e s tt a s k t h i st h e s i sa l s od i s c u s s e st h es p e c i f i ct e s t i n gp r o c e s so ft h i st e s tm o d e li nd i f f e r e n t t e s tr e q u i r e m e n t s t h ea n a l y s i sf o rt h et e s tm o d e ls h o w st h a ti tc a nn o to n l ys o l v et h e d y n a m i ca n dd i s t r i b u t e dp r o b l e mi nw e b s e r v i c et e s t i n ge f f e c t i v e l yb u ta l s oi m p r o v e t h et e s te f f i c i e n c y i no r d e rt oi m p r o v et h ee f f i c i e n c yo ft h et e s tm o d e l ,t h i st h e s i sp r e s e n t sat e s t c a s ea u t o m a t e dg e n e r a t i o nf o rw e bs e r v i c e t h i sa p p r o a c hi n c l u e st e s ts e q u e n c e a u t o m a t e dg e n e r a t i o na n dt e s td a t aa u t o m a t e dg e n e r a t i o n t h ee x i s t i n gt e s t i n gm e t h o d sh a v es o m es h o r t c o m i n g st h a tt h e yn e e da r t i f i c i a l l y p a r t i c i p a t i o n ,a n dt h ed e g r e e so fa u t o m a t i o na r en o th i g h as t a n d a r d i z e dm e t h o d h a v n tb e e np r o p o s e da tp r e s e n t t oa d d r e s st h ei s s u e ,f i r s t l yt h i st h e s i sa n a l y s e st h e c o n n e c t i o nb e t w e e nt h eo p e r a t i o n si nw s d la n ds t u d i e sam e t h o dt of i n dt h e1 i n k b e t w e e nt h e s eo p e r a t i o n s s e c o n d l y ,ad i r e c t e dg r a p hw h i c hu s e dt oe x p r e s st h e r e l a t i o n s h i pa m o n gt h eo p e r a t i o n s o fw e bs e r v i c ei sc o n s t r u c t e d ,a n dt h e na n o p e r a t i o ns e q u e n c e sg e n e r a t i o na l g o r i t h mb a s eo nt h ed i r e c t e dg r a p hi sp r o p o s e d a c a s es t u d ys h o w st h a tt h em e t h o di sf e a s i b l e am e t h o do fv a r i a t i o nt e s td a t aa u t o m a t e dg e n e r a t i o nb a s eo nd e c i s i o nt a b l ei s p r e s e n t e dt og e n e r a t et e s td a t aa u t o m a t i c a l l y t h i st h e s i sc o n s t r u c t st h ew e b s e r v i c e c o n t r a c t ,a n dt h e nu s e ss o m et e s ts t r a t e g yt og e n e r a t et h ei n t i a lt e s td a t as e t sb a s e do n c o n t r a c t f o u rc o n t r a c tm u t a t i o no p e r a t o r sa r eu s e di nc o n t r a c t u s et e s td a t at or u n o n t h ec o n t r a c ta n di t sv a r i a t i o n ,a n dr e c o r dt h ek i l l e d - m u t a t i o n sn u m b e ro fe v e r yt e s t d a t a a tl a s t ,t h ef i n a lt e s td a t as e t sc a nb eg o tb yg r e e d ya l g o r i t h m t h ee x p e r i m e n t l i i 硕f :学位论文 r e s u l t ss h o wt h a tc o m p a r i n gw i t ht h ec o n t r a c tm u t a t i o nm e t h o d ,t h i sm e t h o dr e d u c e s t h es i z eo fi n i t i a lt e s ts e t s ,r e d u c e st h ec h o i c et i m ea n de n h a n c e st e s te f f i c i e n c y k e yw o r d s :s o f t w a r et e s t i n g ;w e bs e r v i c e ;a g e n t ;t e s tc a s e ;c o n t r a c tm u t a t i o n i v 基于a g e n t 的w e bs e r v i c e 测试模型和测试方法研究 目录 学位论文原创性声明和学位论文版权使用授权书i 摘要i i a b s t r a c t i i i 插图索引v i i i 附表索引i x 第l 章绪论1 1 1 研究背景与意义1 1 2 国内外研究现状2 1 3 本文工作一4 1 4 论文结构5 第2 章w e bs e r v i c e 概述6 2 1 引言6 2 2w 曲s e r v i c e 的概念6 2 3w e bs e r v i c e 的原理7 2 3 1 w 曲s e r v i c e 的架构一7 2 3 2w e bs e r v i c e 使用的协议8 2 4w 曲s e r v i c e 的特点9 2 4 1w 曲s e r v i c e 的特性9 2 4 2w e bs e r v i c e 的特性对测试的影响一9 2 5w e bs e r v i c e 测试10 2 5 1w e bs e r v i c e 测试内容1 0 2 5 2w e bs e r v i c e 测试过程的组织框架l1 2 6 小结12 第3 章基于a g e n t 的w e bs e r v i c e 测试模型1 3 3 1 引言13 3 2 a g e n t 13 3 2 1 a g e n t 的起源和发展1 3 3 2 2 a g e n t 的定义和特点1 4 3 2 3 a g e n t 的分类1 4 3 2 4 a g e n t 环境的分类1 5 3 3 基于a g e n t 的系统概况1 6 v 硕 :学位论文 3 3 1 m u l t i a g e n t 系统j 1 6 3 3 2 m u l t i a g e n t 系统的特点1 6 3 3 3 m u l t i a g e n t 系统的通信方式1 7 3 4 基于a g e n t 的w e bs e r v i c e 测试模型1 8 3 4 1 测试模型的设计思想“1 8 3 4 2 基于a g e n t 的w e bs e r v i c e 测试模型18 3 4 3a t m w s 的分析2 4 3 4 4 a t m w s 的实例应用分析一2 5 3 5 小结2 5 第4 章w e bs e r v i c e 测试序列的自动生成方法2 6 4 1 引言2 6 4 2w s d l 2 6 4 2 1w s d l 定义2 6 4 2 2w s d l 的结构2 7 4 2 3 消息之间的联系一2 9 4 2 4 查找联系的方法3 2 4 3 测试序列的自动生成3 4 4 3 1 测试序列模型一3 4 4 3 2 模型构建算法3 5 4 4 实验3 6 4 5 小结3 8 第5 章基于决策表的变异测试数据生成一3 9 5 1 引言一3 9 5 2 合约变异测试3 9 5 2 1 变异测试的基本概念3 9 5 2 2w e bs e r v i c e 的合约4 0 5 2 3 合约变异4 0 5 3 基于决策表的合约变异测试数据生成4 l 5 3 1 合约的表示4 1 5 3 2 决策表4 3 5 3 3 基于决策表的合约变异测试数据生成方法一4 4 5 4 测试数据效率判断准则4 9 5 5 实验4 9 5 6 小结5 3 结论5 4 v i 基于a g e n t 的w e bs e r v i c e 测试模型和测试方法研究 参考文献5 6 致j 射6 0 附录a 攻读硕士学位期间所发表的学术论文6 l 附录b 攻读硕士学位期间所参与的项目6 2 v i i 硕 :学位论文 插图索引 图2 1 面向服务的体系结构图7 图2 2w e bs e r v i c e 的概念性协议栈8 图3 1 基于a g e n t 的w e bs e r v i c e 测试模型1 9 图3 2a t m w s 中a g e n t 的层次结构图一2 0 图3 3 测试执行顺序图2 2 图4 1w s d l 文档结构主要元素之间的关系图2 8 图4 2x m ls c h e m a 的树模型3 0 图4 3w s d l 中两个操作的消息流3 0 图4 4a t m 机测试操作序列有向图3 7 图5 1 基于决策表的合约变异测试数据生成方法4 5 基于a g e n t 的w e bs e r v i c e 测试模型和测试方法研究 附表索引 表2 1 不同测试者执行测试的关键点1 2 表4 1 操作的前置操作与后置操作集合3 6 表5 1 决策表一4 3 表5 2 合约否定4 8 表5 3 前置减弱一4 8 表5 4 后置加强4 8 表5 5 固定性变异4 8 表5 6 三角形判断的w e bs e r v i c e 决策表1 - 5 0 表5 7 三角形判断的w e bs e r v i c e 决策表2 5 0 表5 8 三角形判断的w e bs e r v i c e 决策表3 一5 l 表5 9 三角形判断的w e bs e r v i c e 决策表4 5 2 表5 1 0 实验的结果对比5 2 f 硕卜学位论文 1 1 研究背景与意义 第1 章绪论 近年来,随着分布式模型在各个应用领域之间的迅速普及和飞速发展,分布 式模型的应用已经形成了一种趋势。作为一种新的技术,w e bs e r v i c e 具有松耦合 性、独立性和易调用性等特点,适合于不同系统的集成和整合,深得开发者的青 睐,被许多企业和公司采用,而且已经渗透到商业、经济领域的各个方面,对人 们的工作和生活产生了重大的影响。 w e bs e r v i c e 作为一种应用程序,通常依照面向服务的软件体系结构建立,它 定义一个接口,向外界发布描述自身的功能,使得不同平台和语言开发出来的程 序之间的相互通信成为可能,w e bs e r v i c e 的出现极大地拓展了现有应用程序的功 能,动态地实现了不同程序之间的组合,同时也为开发者节省了再次研发的成本, 因此整个w e bs e r v i c e 的发展前景是光明的。目前大部分研究者都将焦点集中于 w e bs e r v i c e 的设计和开发上,只注重w e bs e r v i c e 的功能设计上,而忽略了质量 方面的问题,但服务质量体现了w e bs e r v i c e 的非功能要求,当有多个w e bs e r v i c e 都可以完成同一个功能时,其质量将成为用户挑选的唯一标准和尺度。如果w e b s e r v i c e 的质量没有保障,客户在使用w e bs e r v i c e 的过程中可能会遇到性能不稳 定,响应时间过长等问题,都会导致客户对w e bs e r v i c e 失去信赖。随着整个行 业对质量控制的逐步重视,保障w e bs e r v i c e 的质量也慢慢地成为w e bs e r v i c e 研 究者关注的热点问题之一。为用户提供一个准确、完善的w e bs e r v i c e ,在w e b s e r v i c e 的发展过程中显得尤为重要。 测试作为质量保证的重要手段,因此对w e bs e r v i c e 进行测试是保证其质量 的有效方法。由于w 曲s e r v i c e 具有异构、分布和平台无关等其自身的特性,使 得w 曲s e r v i c e 的测试和传统程序的测试不同,从而在测试方面提出了新的挑战。 和一般的软件不同,w e bs e r v i c e 的使用通常涉及到服务代理、服务提供者和服务 请求者三种不同的角色,他们需要共同参与到w e bs e r v i c e 的应用中。用户请求 者使用w e bs e r v i c e 前,用户无法预知具体提供服务的w e bs e r v i c e ,w e bs e r v i c e 动态进行选择和绑定,整个过程是不确定的,而这种不确定性增大了w e bs e r v i c e 测试的难度和时间。 目前已经出现了不少开源代码或者商用的w e bs e r v i c e 测试工具,但是这些 工具中还存在着不足,需要人工参与或者手动进行测试,自动化测试方面的工具 很少。因此研究一种高效、自动化的w e bs e r v i c e 测试方法成为当前w e bs e r v i c e 技术研究的热点和难点,具有十分重大的理论和现实意义。 1 2 国内外研究现状 近年来,国内外研究者在w e bs e r v i c e 测试方面取得了一些新的进展,主要 体现在测试的发展阶段和测试方法类型两个方面: ( 1 ) w e bs e r v i c e 测试的发展阶段 依据每个阶段考虑的侧重点不同,将w e bs e r v i c e 测试的发展历程划分为三个 阶段【2 j : 第一阶段( 2 0 0 2 2 0 0 3 ) ,w e bs e r v i c e 被当做是一个单元,这个阶段一般都利用 w e bs e r v i c e 说明来进行单元测试。该阶段的测试比较单一。 第二阶段( 2 0 0 3 2 0 0 5 ) ,测试s o a 及其性能是这个阶段主要考虑的问题。它包 括测试w e bs e r v i c e 的发布、查找和绑定性能,异步能力和s o a 的中介通信协议 s o a p 。同时,测试服务质量也是这个阶段研究者关注的一个热点。 第三阶段( 2 0 0 6 至今) ,w 曲s e r v i c e 动态运行相关的特征是这时期的重点。它 主要侧重于测试w e bs e r v i c e 在动态绑定环境下的性能和不同w e bs e r v i c e 之间组 合的功能。 ( 2 ) w e bs e r v i c e 测试方法的研究 邓小鹏和邢春晓等人对现有的w e bs e r v i c e 测试方法进行了分类p j ,主要分为 静态测试和动态测试。静态测试指不运行w e bs e r v i c e 程序,仅仅通过测试者或 测试工具对程序代码、文档进行分析和检查,在此过程中发现程序代码中存在的 错误。它主要包括代码审查、代码走查、桌面分析等方法。动态测试是指借用人 工手动或测试工具的协助运行程序代码检查w e bs e r v i c e 的动态行为和结果,以 发现其中存在的错误。这种测试方法又可以分为三种:基于规约的测试( 黑盒测 试) 、基于程序的测试( 白盒测试) 、基于程序与规约相结合测试( 灰盒测试) 。在现 有的测试需求下,黑盒测试是w e bs e r v i c e 测试研究的重点,因为w 曲s e r v i c e 对 于使用者来说是不公开的,即代码不可见。现有的黑盒测试主要有两类:一种是 基于规约的方法,另一种是基于模型的方法。 基于规范的方法是依靠被测试系统的参考文档,比如用户接口描述、设计规 范、需求文档或者用户手册来产生测试用例的一种测试方法。在这类研究中,一 些文献开展了具有代表性的初步研究工作。t s a i 等人对一个标准的w s d l ( w e b s e r v i c e sd e s c r i p t i o nl a n g u a g e ,w 曲服务描述语言) 文档进行了四个方面的扩展【4 j , 在w s d l 中添加了输入输出的依赖( i n p u t o u t p u td e p e n d e n c y ) 、调用序列 ( i n v o c a t i o ns e q u e n c e s ) 、分层功能描述( h i e r a r c h i c a lf u n c t i o n a ld e s c r i p t i o n ) 、并发 序列说明( c o n c u r r e n ts e q u e n c es p e c i f i c a t i o n s ) 四种信息,用来提高单个w 曲 s e r v i c e 的易测试性。 2 硕卜学位论文 白晓颖等人对w e bs e r v i c e 的w s d l 进行语义上的分析,生成一个结构化的 d o m ( d o c u m e n to b j e c tm o d e l ,文档对象模型) 树,从测试数据和测试操作两个方 面来生成测试用例【5j ,其中依据标准的x m ls c h e m a 语法来对其中的消息数据类 型进行分析生成测试数据,根据操作之间独立性分析来生成操作流,最后将生成 的测试用例存入一个x m l 格式的文档。这种测试方法有一定的自动化,但是只 能处理简单的数据类型,不能处理复杂的w e bs e r v i c e 数据类型,具有一定的局 限性。 rs i b i l i n i 和nm a n s o u r 使用变异技术实现了单个、e bs e r v i c e 测试【6 1 。针对 w s d l 文档中的3 种元素:类型( t y p e s ) 、消息( m e s s a g e ) 及端口类型( p o r tt y p e ) 定义 了9 种变异算子,使用定义好的变异算子对w s d l 文档进行变异,利用变异后的 w s d l 文档,实现w e bs e r v i c e 的接口测试。这种方法依赖于变异测试,而变异 测试的好坏和变异算子的定义有密切的联系,这里的变异算子比较简单,只能够 检测到较少的错误,测试效率不高。 l iz h o n gj i e 等人提出了一种有效的w 曲s e r v i c e 测试用例的框架【7 】。在这个 框架中,测试者自己限定测试领域,测试约束条件和测试数据的生成规则,通过蠹 综合测试者的定义和w s d l 文档中包含的信息,产生更有效的测试数据,这些数 据能在更短的时间内发现错误,提高测试效率。 s n e e d 和h u a n g 提出了一个w s d l t e s t 的工具1 8 j ,能实现w e bs e r v i c e 的单元“ 测试。w s d l t e s t 可以根据w s d l 来产生随机的调用请求,调用需要测试的w e b s e r v i c e ,然后收集测试结果,并对测试结果进行判断。但是这些功能都需要测试 者手动地在测试脚本中加入前置条件和断言来完成的,在测试中需要测试人员参峰 与,测试时间比较长,效率不高。 总体说来,基于规约测试的研究主要覆盖了三个方面的内容,第一,完善 w s d l 文档以便于测试,如文献【4 】;第二,根据w e bs e r v i c e 的w s d l 中的数据 类型和约束来产生测试数据,如文献 5 7 】;第三,根据w s d l 来研究w e bs e r v i c e 的自动化测试工具,如文献【8 】。在这方面的研究取得了一定的进展,但是w s d l 文档还不能完全保证测试的充分性,而且没有实现自动化测试,测试代价比较高。 基于模型的测试方法是根据测试需求生成测试数据的一种技术。在这种测试 方法中,主要是依赖描述被测系统的预期行为模型来生成测试数据。 b e l l if ,l i n s c h u l t em 提出使用事件序列图( e v e r n ts e q u e n c eg r a p h ) 来进行 w e bs e r v i c e 测试1 9 】。通过将w 曲s e r v i c e 的请求和回答建立为图中的事件,用事 件之间的边表示先后顺序,通过邮路问题算法【1 0 】对复杂的事件序列图进行遍历, 来获得合法的事件序列,再通过深度遍历算法来产生错误事件。事件中的测试数 据是由一个带前置条件和后置条件的决策表来产生。 p a r a d k a ra 等人提出基于l o p e ( i n p u t s ,o u t p u t s ,p r e c o n d i t i o n ,e f f e c t s ) 图来 产生测试用例,以此来对w e bs e r v i c e 进行一致性测试j 。语义w e bs e r v i c e 测试 过程分为三个阶段:开发测试、存储测试和最终用户测试阶段。每个操作的测试 目标通过对边界值,基数限制,故障的概念来获取。他们将这些测试目标和服务 的i o p e 描述用来作为测试输入,并通过对状态进行变异来产生确定序列。 s i n h a 和p a r a d k a r 等人提出基于e f s m ( e x t e n d e df i n i t es t a t em a c h i n e ,扩展的 有限状态机) 的方法来测试w e bs e r v i c e 功能的一致性【l2 1 。这种方法将w s d l s 模 型转化为e f s m 表示,并提出四种不同的测试数据产生技术,包括全谓词覆盖、 基于变异、投影覆盖和b z t t 方法。在全谓词覆盖中,e f s m 中的全部状态被转 化为d n f ( 析取范式) ,再产生覆盖每个过渡状态的测试序列。在基于变异的方法 中,使用了操作之间的布尔关系来产生测试数据。在投影覆盖中,用户通过添加 和排除约束来说明测试目标。b z t t 方法使用b ,z 和状态图作为输入,并使用 一些测试策略来生成测试用例。 由此可见,基于模型的w e bs e r v i c e 测试主要是根据模型来产生测试数据, 其中用到的模型包括:事件序列图模型、i o p e 图模型等。但是这些模型大多数是 针对带语义信息的w e bs e r v i c e 说明。而针对带w s d l 文档的w e bs e r v i c e 测试模 型研究的比较少。 综上所述,现有的w e bs e r v i c e 测试研究中还存在不足。在两类研究中,都 存在针对性不足、需要人工参与、耗时较长、效率不高等问题。 1 3 本文工作 本文在总结现有的研究成果的基础上,对w e bs e r v i c e 测试的特点展开了研 究和分析,提出了一种基于a g e n t 的w e bs e r v i c e 测试模型,描述了模型的架构 以及不同测试方案下a g e n t 之间的协作分工,为了提高该模型的测试效率,提出 了一种自动化测试用例生成算法。 论文的主要工作如下: ( 1 ) 分析了眠bs e r v i c e 的特点及其对测试产生的影响,研究了a g e n t 技术在 软件测试中的作用。 ( 2 ) 针对现有w e bs e r v i c e 测试方法中存在的问题,提出了一种基于a g e n t 的 w e bs e r v i c e 测试模型,能较好地解决测试动态性等问题。并讨论了该模型在不同 的测试需求下的运行机制和a g e n t 之间的角色和任务分配,较好地满足了测试者 不同的测试需求。 ( 3 ) 测试用例分成两部分,一部分是测试序列的生成,另一部分是测试数据的 生成。当w e bs e r v i c e 中有多个操作,已有的测试方法不能自动化生成操作测序 列,针对这个问题,本文提出了一种测试序列自动生成方法。 ( 4 ) 在w e bs e r v i c e 测试数据生成方面,一种高效的测试方法就是变异测试。 硕士学位论文 变异测试数据的好坏取决于初始测试集的大小和选择,而初始测试集一般过大, 耗时比较多。为解决该问题,本文提出了一种基于决策表思想的测试数据生成算 法,它通过减少初始测试集的大小,提高变异测试的效率,从而降低测试代价。 1 4 论文结构 本文的论文内容结构安排如下: 第l 章首先阐述w e bs e r v i c e 测试的研究背景、意义,介绍了w e bs e r v i c e 测 试技术的国内外研究现状以及本文的主要工作和论文结构。 第2 章介绍了w e bs e r v i c e 的概念和原理,然后进一步介绍了w e bs e r v i c e 和 传统软件不同的特点以及这些特点给w e bs e r v i c e 测试带来的影响,最后介绍了 w e bs e r v i c e 的测试内容、方法以及测试过程的组织框架。 第3 章介绍a g e n t 技术的相关概述和特点,并提出了基于a g e n t 的w e bs e r v i c e 测试模型,并对模型的架构和性能进行了详细的描述。分析了在不同的测试需求 下,整个模型的具体测试过程和a g e n t 之间的角色划分。 第4 章和第5 章是w 曲s e r v i c e 测试用例自动化生成的两个部分。测试用例毒 包括测试序列和测试数据。第四章是关于测试序列自动生成的方法,首先介绍了 w e bs e r v i c e 中的w s d l 文档的结构,详细地介绍了各个结构所表示的含义以及 结构之间的联系,重点分析了同一个w e bs e r v i c e 的操作之间的联系,在这个联。 系的基础上,提出了种测试序列自动生成方法。首先构建了有向图模型表示操 作之间的关系,然后使用一种算法根据有向图生成测试操作序列。最后通过一个 w e bs e r v i c e 实例说明了该方法的有效性。 t 第5 章是关于测试数据自动生成的方法。首先介绍了变异测试的概念、基本 思想和决策表测试的思想,介绍了w e bs e r v i c e 合约的概念,并使用o c l 语言描 述合约,在合约的基础上构建了决策表,提出了基于决策表的合约变异测试数据 自动生成算法,使用决策表方法来生成初始测试数据集,再使用合约变异对数据 进行选择,解决了变异测试初始测试集过大和耗时过长的问题,并用实验说明了 该算法的有效性。 本文最后进行了总结和展望。主要是对论文工作进行总结和对w e bs e r v i c e 测试的 进一步研究提出了展望。 5 第2 章w e bs e r v i c e 概述 2 1 引言 , w e bs e r v i c e 是基于面向服务的软件体系结构产生的,为分布式计算提供了一 种标准的、松散的跨平台的新规范。 2 2w e bs e r v i c e 的概念 w 3 c ( w o r l dw i d ew e bc o n s o r t i u m ) 给w e bs e r v i c e 的定义是一个软件系统,能 支持网络上机器对机器接口的互操作i l3 1 。它的

温馨提示

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

评论

0/150

提交评论