GUI软件的测试用例优化算法研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
随着时代的发展,GUI (Graphical User Interface,图形用户接口)已经发展成为了软件领域必不可少的技术,大部分的软件都使用了GUI,这也使得基于GUI软件的测——GUI测试变的必须和重要。
     很多学者和研究机构对GUI测试进行了系统的分析和研究,其主要工作集中在如下方面:
     1.GUI测试用例,GUI测试具有不同于传统软件测试的特性,其测试用例的定义和生成方法都需要重新考虑。GUI软件本身的复杂程度也给这一过程增加了一定的难度。
     2.GUI测试覆盖准则,测试覆盖准则一直是软件测试的重要课题,其不仅可以用来评估测试中用例的覆盖程度,也可以用于指导生成测试用例。传统的覆盖准则不适合用于进行GU软件的测试,需要针对GUI测试定义新的覆盖准则。
     3.GUI测试执行,GUI软件一般规模庞大,测试套件中涵盖的测试用例个数众多,手工测试会费时费力。为了改善这种情况,不少学者通过对GUI测试和行为建模的方法,提出了GUI测试自动化执行的框架。
     针对以上方面,本文展开了对GUI测试的研究:
     首先介绍了GUI和GUI测试的概念和相关知识以及研究现状;然后阐述了基于动作的GUI测试模型基本理论,并给出了相关开发环境下的主要元素实现及相关算法;接着以该模型为基础,使用一种GUI测试覆盖准则对测试用例的生成进行了优化,最后在一个GUI软件上进行了应用以及分析了应用结果,并从自身和他人的角度对该准则进行了改进。本文希望通过以上这些研究,可以对GUI测试的理论和应用起到一定的参照和推动作用。
With the development of the time, GUI(Graphical User Interface)has grown into very important technology in the software field. Most of the software use s this technology, so the testing based on the GUI software; GUI testing beco mes necessary and important.
     Currently, the research of GUI testing is developing, and there are still m any questions needed to be resolved. Two main difficult problems are included:
     Many scholars and research institutions provide systematic analyses and studies about GUI testing, and these work focus on the following aspects:
     First. GUI testing case. GUI testing has many characteristics which are different from traditional software testing, so GUI testing case and the generate method of it needs to be redefined. The complexity of GUI software also makes this procedure more difficult.
     Second. GUI testing coverage criteria. Coverage criteria are always important issues for software testing, which not only can be used to evaluate the coverage of the cases in testing, but also guide generating test cases. But the GUI testing is different from traditional testing and its characteristics determine that new coverage criterion should be studied and defined.
     Third. GUI testing execution. The scale of GUI software is always vast, and the number of testing cases in its test suite is so many that it will waste time and energy using the way of manual testing. In order to improve this situation, many scholars and research institutions give the GUI testing and behavior modeling methods, and establish the frameworks of GUI testing automated execution.
     This paper study the testing base on GUI software, GUI testing from these two aspects:
     First expatiates the knowledge of the GUI, GUI testing and the existing re search situation about them, gives the implement of the main elements and the related algorithm, then uses one of the GUI testing coverage criteria to optimi ze the generation of test cases based on this model, at last applies this theory on a GUI software and analysis the result of the application, gives some impr oved methods from the perspective of own and others. We wish that these stu dies can be useful to the theory and application of GUI testing.
引文
[1]Kai-Yuan Cai, Lei Zhao, Hai Hu, Chang-Hai Jiang, On the Test Case Def inition for GUI Testing, in Proceedings of the Fifth International Conference on Quality Software (QSIC 2005), pp.19-28, Melbourne, Australia, September 2 005.
    [2]张博锋,邹长青.面向GUI软件测试的交互图生成及其实现[J].计算机应用研究.2007,24(11):232-235.
    [3]佟伟光.软件测试[M].北京:人民邮电出版社,2008.
    [4]GUI测试总结.[EB/OL]. http://www.51testing.com/html/81/n-17281.html,200 7-08-01.
    [5]Hong Zhu, Patrick A. V. Hall, John H. R. May, "Software Unit Test Cover age and Adequacy," ACM Computer Surveys, Vol.29, No.4, pp.366-427, Decem ber 1997.
    [6]WIMP—维基百科.[EB/OL]. http://zh.wikipedia.org/wiki/WIMP,2013-03-12.
    [7]黎鹰,李亮.图形用户接口的发展与分类[J].工程地质计算机应用.2006(04).
    [8]XEROX—互动百科.[EB/OL]. http://www.baike.com/wiki/XEROX+8010,20 10-03-02.
    [9]MS-DOS—维基百科.[EB/OL]. http://zh.wikipedia.org/wiki/MS-DOS,2013-0 4-26.
    [10]GUI测试之按钮篇.[EB/OL]. http://blog.csdn.net/imlogic/article/details/16284 57,2007-05-28.
    [11]R.Binder, Testing Object-Oriented Systems, Addison-Wesley,2000.
    [12]Memon A. M., Soffa M. L., Pollack M. E.2000. Automated test oracles for GUIs. In SIG-SOFTOO/FSE-8:Proceedings of the 8th ACM SIGSOFT Int ernational Symposium on Foundations of Software Engineering. ACM Press, N ew York, NY,30-39.
    [13]Hong Zhu, Patrick A. V. Hall, "Test Data Adequacy Measurement," Softw are Engineering Journal, Vol.8, No.1, pp.12-30, January 1993.
    [14]GUI软件测试.[EB/OL]. http://baike.baidu.com/view/5131653.httm,2012-09-01.
    [15]Scott McMaster, Atif M. Memon, "Call-Stack Coverage for GUI Test Suit e Reduction," Transactions of Software Engineering, Vol.34, No.l, pp.99-115, J anuary-February 2008.
    [16]张素琴等.编译原理(第2版)[M].北京:清华大学出版社,2005.
    [17]Lei Zhao, Kai-Yuan Cai, Event Handler-Based Coverage for GUI Testing, in Proceedings of the 10th International Conference on Quality Software (QSIC 2010.11),326-331,2010.
    [18]Interactive M., WinRunner产品说明,ttp://www.51testing.com,2001.
    [19]惠普公司—维基百科.[EB/OL]. http://zh.wikipedia.org/wiki/%E6%83%A0% E6%99%AE%E5%85%AC%E5%8F%B8,2013-05-11.
    [20]E测工作室.QTP项目应用与进阶[M].北京:化学工业出版社,2009.
    [21]Myer G.J.著,周芝英等译.计算机软件测试技巧[M].北京:清华大学出版社,1985.
    [22]L.White, H.Almezen, "Generating Test Cases for GUI Responsibilities Usi ng Complete Interaction Sequences", Proc. the 11th International Symposium on Software Reliability Engineering,2000, pp110-121.
    [23]L.White, H.Almezen, N.Alzeidi, "User-Based Testing of GUI Sequences an d Their Interactions", Proc. the 12th International Symposium on Software Reli ability Engineering,2001, pp54-63.
    [24]F.Belli, "Finite State Testing and Analysis of Graphical User Interfaces", P roc. the 12th International Symposium on Software Reliability Engineering,200 1, pp34-43.
    [25]A.M.Memon, M.E.Pollack, M.L.Soffa, "Hierarchical GUI Test Case Genera tion Using Automated Planning", IEEE Transactions on Software Engineering, Vol.27, No.2,2001, pp144-155.
    [26]Kai-Yuan Cai, Lei Zhao, Feng Wang, "A Dynamic Partitioning Approach f or GUI Testing", in Proceedings of the 30th Annual International Computer S oftware and Applications Conference (COMPSAC), Vol.2, pp.223-228, Septem ber 2006.
    [27]属性(C#编程指南).[EB/OL]. http://msdn.microsoft.com/zh-cn/library/vstu dio/x9fsa0sw(v=vs.100).aspx,2011-01-01.
    [28]方法(C#编程指南).[EB/OL]. http://msdn.microsoft.com/zh-cn/library/vstu dio/x9fsa0sw.aspx,2011-01-01.
    [29]FontSize枚举.[EB/OL]. http://msdn.microsoft.com/zh-cn/library/system.web.u i.mobilecontrols.fontsize(v=vs.100).aspx,2011-01-01.
    [30]被测系统—维基百科.[EB/OL]. http://zh.wikipedia.org/wiki/AUT,2013-03-1 3.
    [31]张丽颖,蒋祖华.基于本体和规则推理的GUI软件测试用例生成[J].计算机应用研究,2010,27(1):120-123.
    [32]江琴,刘琳岚,苏曦,蔡轲.基于事件权重的GUI测试路径生成方法[J].计算机应用,2009,29(5):1382-1384.
    [33]郑艳艳,基于Petri网模型的GUI软件测试用例生成研究,[硕士学位论文].武汉,华中师范大学,2006.
    [34]System.Windows.Forms命名空间.[EB/OL]. http://msdn.microsoft.com/zh-cn/ library/vstudio/system.windows.forms(v=vs.100).aspx,2011-06-05.
    [35]Xie Q., A.M.Memon., Using a Pilot Study to Derive a GUI Model for Automated Testing, ACM Transactions on Software Engineering and Methodology, Vol.18, No. 2, Article No.7, October 2008.

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

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

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