基于SSM的软件测试可视化实训平台的设计与实现

2021-08-09 03:23欧阳潘
电子技术与软件工程 2021年11期
关键词:软件测试管理员文档

欧阳潘

(江西外语外贸职业学院 江西省南昌市 330099)

本文以我校计算机课程《软件测试》为例,以行业测试岗位职业能力要求为基础,分析能力与学习目标关系,梳理学习成果转化为职业能力的培养途径,运用成果导向方法对软件测试学习过程、任务、成果指标等进行设计、分解和分析,构建评价标准,依据学习目标和评价体系设计开发出一个软件测试任务实训平台,以记录学生完成各项实训任务成果及评价。下面从平台实现的开发技术、功能需求分析、系统设计与实现、实施效果等方面展开论述。

1 平台开发技术与环境

本平台采用基于H5 的开发框架Bootstrap+Vue+Echarts 来实现前端界面。其中Bootstrap 4 较先前版本改进了网格系统,并支持利用弹性盒模型flexbox 进行快速布局,重写了所有的js 插件,提供泛型拆解方法、选项类型检查等特性,其编译速度更快。Vue 是一套构建用户界面的渐进式前端框架,与其他框架不同的是,Vue 采用自底向上增量开发的设计,方便与其他库或已有项目整合,快速实现复杂应用页面。Echarts 是百度开源的js 图表库,能移动设备或PC 端运行,用不同类型图表对数据进行可视化展示。上述框架能够快速布局搭建前端页面,实现页面测试任务展示提交,实现流畅的人机界面交互,提供良好用户体验。

后台采用Apache+Tomcat+MySQL 搭建Web 服务器环境。采用基于JaveEE 的SSM 框架(Spring+SpringMVC+MyBatis),配合前端实现平台各业务功能的实现。SSM 框架采用MVC 架构设计将系统划分表示层(View)、逻辑层(Control)、模型层(Model)。它在本项目的应用优势在于平台所有生成的对象由Spring 框架统一管理,控制反转(IOC)和切面编程(AOP)使控制生成对象和管理事务变得更加容易。Spring MVC 框架入口基于servlet,它能将学生视频学习、课后答题等业务的映射、解析处理过程严格分离。相比Struts,Spring MVC 更轻松地与Spring 来完成这些业务的整合。利用Mybatis 文件管理的优势,对于每个学生学习任务的记录,用SQL 将数据写入XML 文件中记录,利用MySQL 统一管理。相比其他技术,Mybatis 结构稳定、扩展性强、维护成本低,并且与Bootstrap 框架能够很好契合,有利于提高平台整体运行效率。

2 平台功能需求分析

本实训平台需满足软件测试课程日常实训练习,记录教师发布任务及学生完成情况,并为师生提供可视化数据反馈。用户角色有管理员、教师、学生。

教师根据课程内容收集整合实训资源,设计被测系统及文档等一系列实训相关资料,并向后台导入管理。授课教师根据不同班级学习进度发布知识点测试任务,学生登录后获取发布的测试任务,在线完成任务并提交。教师对学生提交结果进行评价,其中客观题可自行评分,主观题需教师手动评分。评价完成后平台生成全体学生评分,从班级、题目等多个维度进行统计并提供数据图表。

管理员则对平台后台资源进行管理,包括教师和学生账号、测试资源、文档资源等进行管理,同时管理员需监控整个平台的登录访问情况,并按时对平台数据库进行备份。

图1:平台整体功能模块

图2:系统数据库的概念设计

图3:系统登录界面

3 平台系统设计

3.1 平台功能模块设计

本平台服务于全体师生的课程实训活动,要充分考虑到教师及学生在实践练习中的各种实际操作需求,实现任务驱动的实训过程。另外考虑到平台后续推广和移植,在设计时要注重实施的灵活性并预留相应接口,以便平台扩展移植。

图4:系统实训文字资源管理界面

通过对平台功能进行需求分析,笔者对三个角色设计了相应的功能模块。平台整体功能模块如图1 所示。

3.2 教师管理模块

(1)文档资源管理。文档和资源包括被测软件系统相关文档,例如需求分析说明书,设计图稿、测试报告模板、被测系统安装包、知识点测试题目等。文档和资源列表中按入库时间排列当前可用资源,并可在表单中输入信息进行精确或模糊搜索。教师也可上传非系统资源,并共享给其他教师。

(2)测试作业管理。教师根据实训进度,从资源库中选择合适任务及文档资源,设置任务信息后新增并发布,相关班级学生登录后从任务作业中看到教师最新发布的任务。教师可以对已发布的任务进行修改、撤回或关闭,并对学生提交的作业进行评阅打分。

(3)成绩统计分析。教师可以看到授课班级学生各项任务的分数及统计情况。教师可给出条件进行数据查询,并依据数据生成可视化图表。图表能在班级、性别、知识点或任务号等多维度进行统计和比对。

(4)个人信息管理。教师个人信息及初始密码由管理员批量导入,教师可登录后修改。但是授课班级等信息只可查看,不可修改。

3.3 学生管理模块

(1)课程作业管理。学生登录后,可从作业任务列表中看到教师最新发布的任务,以及未完成和已完成的历史任务。学生可点击打开未完成的任务查看内容,根据任务提示信息和文档资源完成测试任务并提交作业。提交后学生用不能再次修改或提交,待教师或系统评价完成后,学生可从任务列表中查到任务成绩分值。

(2)个人信息管理。学生个人基本信息和初始密码由管理员批量导入。学生登录后,可以查看个人信息并修改登录密码。

3.4 平台后台管理模块

(1)被测系统管理。本模块是平台最重要的功能组成部分。该模块用于管理教师发布软件测试实训任务和配置被测系统参数。根据授课内容和进度,教师可以在被测系统中选取用于黑盒、白盒、性能测试的实训项目或任务。但被测系统的Bug 等关键内容配置只能由管理员进行管理,教师没有管理权限。

(2)实训资源管理。管理员通过后台上传有关实训文档资源,也可对所有教师上传的实训资源进行修改、删除等管理,并可通过设置权限将资源分配给需要的教师。

(3)用户管理。管理员可以对教师和学生的账户进行增、删、改、查、恢复初始密码等基本操作。教师和学生账户在使用前由管理员一次性批量导入,初始密码与账号相同。第一次登录后必须修改。

(4)班级管理。开设软件测试课程的班级多为计算机相关专业,为方便教师实施实训管理,将班级发布任务权限赋予授课教师。教师发出的任务,只有该教师授课的班级学生能够接收查看并提交作业,教师也只能评阅授课班级学生提交的作业,其他非授课班级学生无法接收到教师发布的任务。

(5)日志管理。系统日志用于记录实训平台所有活动账户登录的时间及IP 地址等访问操作信息,便于管理员后续对平台进行数据备份和安全管理。

3.5 数据库设计

实训平台系统运行的性能如何,很大程度上取决于后台数据库设计的合理性。良好的数据库设计可以提高系统数据访问速率,提高程序员编写代码实现功能的效率,并且还可以增强系统扩展性。通过对本系统进行数据库的概念设计,得到E-R 图如图2 所示。

4 主要功能实现

4.1 平台用登录

平台对用户访问资源的权限设计使用了SpringSecurity 框架进行配置部署。所有用户在登录时,需要在验证后获取一个令牌,后续访问请求都是基于存储在Cookie 中的令牌。如果Cookie 中没有令牌,则系统拒绝访问。系统登录界面如图3 所示。

4.2 实训资源管理

管理员登录平台后台后,可以对课程实训资源进行增加、删除、修改和查询。资源列表中按上传至系统的时间先后顺序列出所有的资源,管理员可以通过创建人查看资源的上传者,修改上传资源的名称、内容及状态,并对教师设置访问权限。实训资源管理模块界面如图4 所示。

5 总结

本文前端利用Bootstrap+Vue+Echarts 框架并结合SSM 框架设计并实现了使用与软件测试课程的实训平台。经过一个学期的试运行,该系统交互界面友好,操作执行顺畅。本系统通过发布真实被测系统的实训任务,让学生能够切实体会软件测试的全过程,有利于激发学生学习兴趣,提高技能实训效果,同时也减轻老师实训指导工作负担。平台为每名学生都建立了个人档案,并记录了学生每次完成的情况和得分,并通过可视图表的方式呈现,效果更为直观。下一步将尝试将并实训平台推广至其他专业课程。

猜你喜欢
软件测试管理员文档
浅谈Matlab与Word文档的应用接口
有人一声不吭向你扔了个文档
我是图书管理员
我是图书管理员
基于OBE的软件测试课程教学改革探索
EXCEL和VBA实现软件测试记录管理
关于软件测试技术应用与发展趋势研究
基于RI码计算的Word复制文档鉴别
软件测试工程化模型及应用研究
Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat