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