功能测试可回归性研究及分布式环境下协同测试
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
软件测试作为软件工程中质量保证的一个重要环节,在软件整个生命周期管理中发挥着越来越重要的作用。回归测试需要对过去已经成功测试过的功能进行再次测试,这要求测试用例能够重复使用并快速执行。在测试实施过程中,直接复用成熟的测试用例所付出的代价要远远小于重新开发测试用例,因此测试用例的可复用程度直接关系到回归测试的实施效率。同时,为了提高功能测试实施的自动化程度,让测试用例脚本高效执行,测试实施需要在分布式环境下协同进行。
     在深入分析影响功能测试用例复用原因和关键因素的基础上,本文对用例可复用性进行了分类,并给出了用例复用代价的具体分析结果。基于此分析对功能测试可回归性进行了定义,提出了一套软件测试可回归性评价方法,并将该方法应用于一套名为“规则场景驱动的用例生成及执行方法”的可回归性评价中。实践证明,本文提出的功能测试可回归性评价方法对回归测试方法的评价和比较具有重要的指导意义和实用价值。
     为了能够更加便捷地实施功能测试自动化,需要实现功能测试在协同支持下的高效实施。本文研究了分布式环境下协同测试相关技术,对测试用例依赖关系进行了深入分析,将其分为时间依赖、环境依赖、先后关系和数据依赖,分别设计了相应的表达方式,并根据协同测试的需要提出了运行控制的解决方法;针对在分布式环境下进行协同测试时用例调度面临的问题,提出了三种测试用例调度策略,分别是依赖优先策略、随机策略和业务逻辑相关策略,为测试用例在分布式环境下的实施提供了算法支持。在分布式环境下协同测试原型的设计和实现中,采用JMS提供可靠消息通信,并结合测试用例执行的透明代理机制,解决了分布式坏境下各测试节点的协同控制问题,实现了一套有效的分布式环境下协同测试平台原型。
As an important step in the quality assurance of software engineering, software testing is playing an increasingly important role in the whole life-cycle management of software. In this paper, the reusability of test case during the regression testing phase are classified and an evaluation method for the feasibility of software regression testing is presented, then the method is applied to evaluate a testing method named 'a rules-scenes driven method for the production and implementation of the cases'. It is proved that this evaluation method has a very important guidance meaning and practical value for the comparison of testing methods.
     At the same time, in order to be able to more easily implement functional test automation, we need achieve implementation efficiency of functional testing that based on coordinate support. This paper briefly introduces case dependence, then based on this we discuss some scheduling strategies of test cases, which provided the support of testing implementation in distributed environment. The prototype platform of coordinated test in distributed environment, which is based on Java Messaging Service, is implemented. Regarding the problem that testing nodes coordination cannot handle in distributed environment, the prototype platform presents a new method called 'proxy mechanism about the implementation of testing cases', which can thus improve the implementation efficiency of functional testing automation.
引文
[l]黄锡滋.软件可靠性、安全性与质量保证[M].北京:电子工业出版社,2002.
    [2]郑人杰,殷人昆,陶永雷.实用软件工程[M].北京:清华大学出版社,2003.
    [3]徐中伟,吴芳美.软件测试质量的度量[J].计算机工程与应用,2002.
    [4]Ron Patton.软件测试[M].周予滨,姚静译.北京:机械工业出版社,2002.
    [5]Glenford J.Myers.The Art of Software Testing.Wiley-Interscience,1979.
    [6]Royer S.Pressman.Software Engineering:A Practitioner's Approach.5~th edition.McGraw-Hill Companies,INC,2001.
    [7]刘大铭.面向GUI的自动化回归测试技术研究[D].大连:大连海事大学,2006.
    [8]姚庆芬.基于BS架构软件的自动化测试研究(硕士学位论文)[D].北京.
    [9]G.Rothermel,M.Harrold.Analyzing regression test selection techniques[J].IEEE Transactions on Software Engineering,1996.
    [10]W.Hetzel.The Complete Guide to Software Testing.QED Information Sciences lnc,1984.
    I11]IEEE610.12-90,IEEE std 829-1998[S].
    [12]胡兢玉.测试能力成熟度模型[J].计算机工程,2003.
    [13]徐仁佐等.构造面向对象软件可复用测试用例的模式研究[J].武汉大学理工学报,2003.
    [14]张海飞等.软件测试构件库[J].小型微型计算机系统,2001.
    [15]Atif M.Memon.A Comprehensive Framework for Testing Graphical User Interfaces[D].Computer Science,University of Pittsburgh,2001.
    [16]P.A Brown,D.Hoffman.The application of module regression testing at TRIUMF.Nuclear Instruments and Methods in physics Research,1990.
    [17]T.Dogsa,LRozman.CAMOTE-computer aided module testing and design enviorment.In:Proceedings of the Conference on Software Maintenance.Los Alamitos,CA,1988.
    [18]A.B.Taha,S.M.Thebaut,S.S Liu.An approach to software fault localization and revalidation based on incremental dataflow analysis.In:Proceedings of the 13th Annual International Computer Software and Applications Conference.Orlando,Florida,1989.
    [19]G.Rothermel,M.J.Harrold,J.Dedhia.Regression test selection for C++ software.Journal of Software Testing,Verication,and Reliability,2000.
    [20]Atif.M.Memon,Mary Lou Soffa.Regression testing of GUIs.Proceedings of the 9th European Software Engineering Conference held jointly with 10th ACM SIGSOFT.New York:ACM Press.2003.
    [21]谢海波,张大方,缪力,谭晓兰.面向对象软件的修改影响分析研究[J].科学技术与工程2005年第10期.
    [22]雷海虹,缪力,张大方.面向对象程序的两种修改影响分析方法[J].计算机工程与科学2005年第5期.
    [23]缪力.依赖性分析及其在软件测试中的应用(博士学位论文)[D].长沙
    [24]柳纯录.软件评测师教程[M].北京:清华大学出版社,2005.
    [25]朱少民.软件测试方法和技术[M].北京:清华大学出版社,2005.
    [26](美)Rick D.Craig Stefan P.Jaskiel杨海燕等译.系统的软件测试[M].北京:电子工业出版社,2003.
    [27]徐仁佐等.构造面向对象软件可复用测试用例的模式研究[J].武汉大学理工学报,2003,49(5).
    [28]尤永康,刘乃琦.自动化回归测试在Java项目中的实现[J].计算机应用2005年1月.
    [29]张江河.软件测试用例复用研究[D].西北大学硕士论文,2005.
    [30]杨芙清.软件复用及相关技术[J].计算机科学,1999.
    [31]姚实颖,肖沙里,谭霞,唐跃林.软件测试自动化中建立可维护脚本的技术[J].计算机工程2003年7月.
    [32]赵强.基于开源软件的J2EE企业级应用开发[M].北京:电子工业出版社,2005.
    [33]胡顺仁,蒋西明,周登义.面向对象系统的回归测试研究[J].重庆工学院学报2005,19(5):31-34.
    [34]刘天北,熊节.J2EE核心模式[M].北京:机械工业出版社,2005.
    [35]施宁.设计模式在基于J2EE的系统中的应用研究[D].杭州:浙江大学,2006.
    [36]Borland中国公司.JBuilder 2005编程与开发[M].北京:电子工业出版社,2005.
    [37]Boehm B.Software Risk Management:Principles and Practices[J].IEEE Software,1991.
    [38]Mary Jean Harrold,James A.Jones,Tongyu Li,Konglin Liang;RegressionTest Selection for Java Software;Proc.Of the ACM Conf.on OO Programming,Systems,Languages,and applications(OOPSLA'01),ACM Copyright.
    [39]Atif M.Memon.A Comprehensive Framework for Testing Graphical User Interfaces[D].Computer Science,University of Pittsburgh,2001.
    [40]Bruce Eckel.Java编程思想[M].候捷译.北京:机械工业出版社,2002.
    [41]John Lewis.Java程序设计教程[M].罗省贤,李军泽.北京:电子工业出版社,2002.
    [42][美]李 等著,曹文静等泽.高效软件测试自动化[M].北京:电子工业出版社,2004.
    [43]张洪伟.Tomcat Web开发及整合应用[M].北京:清华大学出版社,2006.
    [44]阎宏.Java与模式[M].北京:电子工业出版社,2003.
    [45]Bil Lewis,Daniel J.Berg著.深入学习:Java多线程编程[M].北京:电子工业出版社,2000
    [46]JamesW.Cooper编.Java设计模式[M].北京:机械工业出版社,2000.
    [47]Robetr C.Martin著.UML:Java程序员指南:双语版[M].北京:清华大学出版社,2004.
    [48]Joseph Schmuiler著.UML基础、案例与应用[M].北京:人民邮电出版社,2004.
    [49]Didier Martin等著.XML高级编程[M].北京:机械工业出版社,2001.1.
    [50]Tom Myers,Alexander Nakhimovsky著.Java XML编程指南[M].北京:电子工业出版社,2001.4.
    [51]Bil Lewis,Daniel J.Berg著.深入学习Java多线程编程[M]北京:电子工业出版社,2000
    [52]张龙祥.UML与系统分析设计[M]北京:人民邮电出版社2001
    [53]Bruce E.Wampler著.Java与UML面向对象程序设计[M]北京:人民邮电出版社,2002
    [54]陈刚编著.Eclipse从入门到精通[M].北京:清华大学出版社,2006
    [56]http://activemq.apache.org
    [57]http://www.51 testing.com
    [58]http://www.mercury.com

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700