- 无标题文档
查看论文信息

中文题名:

 自动化测试在线管理系统的设计与实现    

姓名:

 李丹    

学号:

 0000206805    

论文语种:

 中文    

学科名称:

 计算机应用技术    

公开时间:

 公开    

学生类型:

 硕士    

学位:

 工程硕士    

学校:

 西南交通大学    

院系:

 信息科学与技术学院    

专业:

 计算机技术    

第一导师姓名:

 陶宏才    

第一导师单位:

 西南交通大学    

完成日期:

 2017-05-02    

答辩日期:

 2017-05-21    

外文题名:

 DESIGN AND REALIZATION OF AUTOMATED TEST ONLINE MANAGEMENT SYSTEM    

中文关键词:

 自动化测试 ; 关键字驱动 ; 测试库复用 ; 在线管理 ; 远程实时控制    

外文关键词:

 Automated testing ; Keyword driven ; Test library Reuse ; Online management ; Remote Real-time control    

中文摘要:

软件测试是软件开发的重要环节,也是保障软件质量的关键步骤,而自动化测试能够使用机器来代替人工进行测试执行,测试效率得到了很大提升。以往的商业自动化测试工具虽然功能强大,但仅仅可以应用于个别特定领域;而自己开发的自动化测试工具,往往仅针对特定需求,特定的项目,在其他的项目中需要反复开发。为此,本文提出了一种解决以上两种问题的方案,即自动化测试在线管理系统。
本文的自动化测试在线管理系统包括自动化测试在线管理平台和对应的测试执行端。在自动化测试在线管理平台部分,使用Java编程语言开发,为用户提供自动化测试一站式管理功能;而测试执行端则使用Python编程语言开发,从平台获取测试数据,调用测试库中的函数,执行测试步骤并实时返回测试结果。
本文具体内容包括:
(1)介绍了项目的背景、研究的目的和意义,分析了课题相关国内外发展现状。
(2)对关键字驱动测试理论,所使用的技术如Spring Framework与Spring Boot、Vaadin和APScheduler进行了简要综述。
(3)分析了目标需求,明确系统的目标,从功能性和非功能性角度具体分析,并确定系统的用例图。
(4)依据系统的需求分析,划分了系统功能模块,设计了系统架构和数据库。
(5)对系统各个模块进行了详细设计与实现。其中,系统管理模块使用分配数据模型CRUD权限对用户和用户组授权,使用BCrypt加密算法验证用户登录密码;测试库管理模块使用Vaadin Upload组件上传和Apache POI库解析测试库Excel文档;测试用例管理模块利用关键字驱动测试特性快速组装测试步骤并生成测试用例;测试计划管理模块使用CRON表达式设置测试任务执行时间;测试执行使用WebSocket通信实现远程实时控制自动化测试执行,使用APScheduler实现定时调度任务。
最后,论文对系统运行结果进行分析,且通过三种类型的测试,验证了本系统的可用性,结果表明,本系统达到了设定的目标。
 

外文摘要:

Software testing is an important part of software development and the key step of guaranteeing software quality. However, automated testing can use machines instead of manual test ution, which improves the efficiency of testing to a large extent. Previous commercial automation testing tools, though powerful, can only be applied to individual specific areas, and their own automated testing tools, often only for specific needs and specific projects, in other projects need to be developed repeatedly. So, this thesis proposes a solution to the above two problems, i.e. automated testing online management system.
The automated test online management system for this thesis includes the automated test online management platform and the corresponding test ution side. In the automated test online management platform, it provides users with automated test management one-stop function using the Java programming language. The test ution side is developed using the Python programming language. It gets test data from the platform, invokes functions in a test library, performs test steps and returns test results in real time.
The details of this thesis include:
(1) Introducing the background of the project, the purpose and significance of the research, and analyzing the development of the subject-related domestic and international.
(2) A brief review of the keyword-driven test theory, the technology used, such as the spring framework and spring boot, Vaadin and APScheduler.
(3) Analyzing target requirements and identifying the goals of the system, the functional and non-functional requirements, and presenting the system use case diagram.
(4) According to the requirement analysis of the system, the system function module is divided, the system architecture and database are designed.
(5) Detailed design and implementation of each module of the system are presented. The system management module uses the allocation data model CRUD permissions to authorize users and user groups. Verifying user logon passwords applies BCrypt encryption algorithm; The test library management module adopts Vaadin upload component to upload test libraries and Apache POI Library to parse test library Excel document; The test case management module quickly assembles test steps and generates test cases by using keywords drive test features; The test plan management module uses CRON expression to set test task ution time; The test ution module uses WebSocket communication to implement remote real-time control automation test ution and uses APScheduler to implement scheduled scheduling tasks.
Finally, the thesis analyzes the system running results and verifies the usability of the system through three kinds of tests. The results show that the system achieves the expected goal.
 

分类号:

 TP311    

总页码:

 71    

参考文献总数:

 55    

参考文献:

参考文献

[1] Glenford J. Myers. The Art of Software Testing Second Edition [M]. John Wily and Sons. 2004.

[2] 姚砺, 束永安. 软件测试自动化关键技术的研究[J]. 安徽大学学报(自然科学版), 2003, (04): 27-33.

[3] 史宁宁. 一种面向Web应用系统的自动化测试框架[D]. 吉林大学, 2011.

[4] 许丽花. QTP在Web自动化测试中的应用[J]. 电脑知识与技术, 2010, (33): 9440-9444.

[5] 周伟, 陈柳. 基于AutoRunner的软件自动测试技术[J]. 信息系统工程, 2014, (06): 102-104.

[6] 宋斌, 方葛丰, 刘毅. 自动测试系统软件平台TestCenter体系结构设计与分析[J]. 测控技术, 2013, (08): 115-118.

[7] 刘东生. 浅谈自动化测试的主要发展方向[J]. 电子制作, 2014, (15): 35-36.

[8] 梁思秋,葛华勇. 基于Robot Framework的MVC GUI模块自动化测试框架[J]. 计算机系统应用, 2015, (07): 83-87.

[9] Max Reidt, Tobias Föhst, Karsten Berns. An overview on framework design for autonomous robots [J]. IT - Information Technology, 2015, 57(2): 75-84.

[10] 吴伶琳. 基于Selenium的软件自动化测试的研究与应用[J]. 计算机与现代化, 2013, (02): 65-68.

[11] 姚炯. 基于Appium的手机应用程序自动化测试研究[J]. 软件导刊, 2017, (01): 129-132.

[12] 杨勋. 软件测试技术研究[J]. 电脑知识与技术, 2015, (28): 207-208.

[13] Ahlam Ansari, Anam Khan, Alisha Khan, Konain Mukadam. Optimized Regression Test Using Test Case Prioritization [J]. Procedia Computer Science, 2016, 79:20-35.

[14] 曾夏辉, 刘洋. 国内软件测试现状分析与几点建议[J]. 网络安全技术与应用, 2006, (05): 53-54.

[15] 江鲸. 软件自动化测试系统的研究与实现[D]. 电子科技大学, 2006.

[16] 王莉, 殷锋, 李奇. 软件自动化测试脚本设计研究[J]. 西南民族大学学报(自然科学版), 2006, (02): 357-360.

[17] 郭利江, 夏嘉. 一种简化自动化测试脚本编写维护的应用方法[J]. 移动通信, 2013, (08): 58-63.

[18] 王世俊. 软件自动化测试框架的研究和实现[D]. 华东师范大学, 2006.

[19] 高峰. GUI录制回放中几个关键技术的研究[D]. 哈尔滨工业大学, 2006.

[20] Emil Alégroth, Robert Feldt, Pirjo Kolström. Maintenance of automated test suites in industry: An empirical study on Visual GUI Testing [J]. Information and Software Technology, 2016, 73:76-90.

[21] ZHAO Ruiliar. Software testing [M]. Beijing: Higher Education Press, 2008: 6-10.

[22] ZHU Ju, WANG Zhijian, YANG Xue. A software automation test frameworks based on data-driven automation methodology [J]. Computer Technology and Development, 2006, 16(5): 68-70.

[23] 王军, 孟凡鹏. 基于关键字驱动的自动化测试研究与实现[J]. 计算机工程与设计, 2012, (09): 3652-3656.

[24] 丁硕. 基于QTP的GPON通信软件自动化测试[D]. 电子科技大学, 2012.

[25] Anonymous. J9 Technologies Debuts JDBC Protocol Add-in Solution for HP LoadRunner [J]. Wireless News, 2008, (02):11-16.

[26] 卢晨. 基于Selenium进行Web应用测试研究[J]. 软件导刊, 2015, (01): 154-155.

[27] S. A. Wegener. Smart test program set (TPS). IEEE Aerospace and Electronic Systems Magazine, 2004:3-7.

[28] 黄松子. 通信电台自动测试系统软件设计[D]. 电子科技大学, 2010..

[29] 陈克浚. 国内软件自动化测试的现状及原因探究[J]. 电子技术与软件工程, 2014, (11): 81.

[30] 王军, 孟凡鹏. 基于关键字驱动的自动化测试研究与实现[J]. 计算机工程与设计, 2012, (09): 3652-3656.

[31] K. V. Aiya, Hemdutt Verma. Keyword driven automated testing framework for web application. IEEE Conference Publications, 2014: 1-6.

[32] 张源. 基于Robot Framework的自动化测试系统的设计与实现[D]. 硕士论文. 南京大学. 2015.

[33] Jeremy T. White, Michael N. Fienen, John E. Doherty. A python framework for environmental model uncertainty analysis [J]. Environmental Modelling and Software, 2016, (03): 56-69.

[34] 小叮当爱学习. RIDE使用介绍[EB/OL]. http://www.jianshu.com/p/91bc2a3425a1, 2016-8-22.

[35] 虫师. Robot Framework [EB/OL]. http://www.cnblogs.com/fnng/p/4333977.html, 2015-3-12.

[36] Mark Lui, Mario Gray, Andy Chan, Josh Long. Introduction to Core Spring Framework [M]. Apress, 2011.

[37] Gustavo Pabon, Mario Leyton. Tackling Algorithmic Skeleton's Inversion of Control [C]. IEEE Conference Publications, 2012: 42-46

[38] David Robinson. Introduction to Aspect Oriented Programming (AOP) [R]. Elsevier Inc, 2007: 1-30.

[39] Jack_Meng. JavaBean简单及使用 [EB/OL].

http://www.cnblogs.com/mq0036/p/3873406.html, 2014-7-28.

[40] 陈立岩. EJB组件技术及应用[J]. 计算机技术与发展, 2007, (03): 62-68.

[41] Jian Hua Li, Fan Xing Meng, Xiu Mei Wen. The Design and Realization of Library MIS Based on MVC [J]. Trans Tech Publications, 2013: 1114-1118.

[42] Hong Jun Li. Research on Restful Web Services in Java [J]. Trans Tech Publications, 2012: 806-808.

[43] Spring Framework官方网站. Spring Framework [EB/OL].

http://projects.spring.io/spring-framework/, 2017-3-9.

[44] 湛宁, 吕争. Spring框架在J2EE中的应用[J]. 科技信息(科学教研). 2008(04).

[45] 舒礼莲. 基于Spring MVC的Web应用开发[J]. 计算机与现代化, 2013, (11): 167-173.

[46] Spring Boot官方网站. Spring Boot [EB/OL]. http://projects.spring.io/spring-boot/, 2017-3-9.

[47] 王永和, 张劲松, 邓安明, 周智勋. Spring Boot研究和应用[J]. 信息通信, 2016, (10): 91-94.

[48] 李洋, 孙永维, 许冰, 王英双. 基于Ajax, Struts, Hibernate和Spring的J2EE架构[J]. 吉林大学学报(信息科学版), 2011, (06): 576-584.

[49] Jeff Dwyer. Pro Web 2.0 Application Development with GWT [M]. Apress: 2008.

[50] Marko Grönroos. Book of Vaadin [M]. 4th ed. Pearson Education, Inc., 2014.

[51] GitHub. APScheduler [EB/OL]. http://apscheduler.readthedocs.io/en/latest/, 2017-4-18.

[52] 邓志宏, 张智, 李建奇, 汪永琳. 基于MVP模式的进销存系统的软件架构设计[J]. 计算机与数字工程, 2010, (12): 96-99.

[53] Vmware. Pivotal tc Server [EB/OL]. http://www.vmware.com/products/pivotal-tcserver.html, 2017-3-15.

[54] Paul Cevoli. Web Access Using Tomcat [M]. Elsevier Inc, 2003.

[55] 姚炯. 基于Appium的手机应用程序自动化测试研究[J]. 软件导刊, 2017, (01): 129-132.

馆藏位置:

 TP311 S 2017    

开放日期:

 2017-05-31    

无标题文档

   建议浏览器: 谷歌 火狐 360请用极速模式,双核浏览器请用极速模式