一、高职软件测试实训室建设背景
随着《中华人民共和国国民经济和社会发展第十四个五年规划和2035年远景目标纲要》的深入实施,我国正在以不可阻挡的势头迈进数字化新时代。在这个波澜壮阔的时代背景下,软件作为数字经济的核心驱动力,其质量与安全直接关系到整个产业的稳健发展和国家的竞争力。因此,软件测试作为保障软件质量与安全的关键环节,其重要性不言而喻。
高职院校,作为技术技能人才培养的摇篮,肩负着培养高水平软件测试专业人才的历史使命。然而,在当前的教育体系中,我们不难发现一个明显的短板:传统的教育模式往往过于侧重理论知识的传授,而轻视了实践操作的重要性。这导致许多学生在毕业后,面对复杂多变的软件测试工作时,往往感到力不从心,难以迅速适应企业的实际需求。
为了弥补这一短板,构建一个高效、实用的高职软件测试实训室显得尤为紧迫和重要。这样的实训室不仅能够为学生提供一个真实、贴近行业的软件测试环境,让他们在模拟的工作场景中掌握实操技能,提升解决问题的能力;还能够帮助学生缩短理论与实践之间的距离,让他们在实践中深化对理论知识的理解,形成更加全面、系统的知识体系。
更为关键的是,高职软件测试实训室的建设对于培养既懂理论又精于实战的软件测试工程师具有深远的意义。这些具备实战经验的软件测试工程师,不仅能够为我国软件产业的高质量发展提供坚实的人才支撑,还能够在技术创新和产业升级中发挥关键作用,推动整个产业向更高层次、更广领域发展。
二、高职软件测试实训室建设内容
(1)实训室硬件建设
在构建实训室硬件环境时,应着眼于前沿科技与企业实际需求,配备高性能计算设备、强大的服务器集群、先进的网络通信设施,以及全面的测试工具集,包括但不限于自动化测试套件、性能评估系统、安全检测软件等,确保学生能够在模拟真实业务场景的环境中深入学习与实践。鉴于软件测试环境的复杂性和多样性,实训室需兼容多种操作系统平台(如Windows、Linux、macOS),并集成云计算平台与容器技术(如Kubernetes),为学生提供一个探索最新技术趋势的舞台,如微服务架构、云原生应用开发等,从而增强他们的技术适应性和创新能力。
(2)实训室软件建设
软件资源与虚拟化技术是实训室现代化建设的核心。利用虚拟化技术,尤其是虚拟机(VM)和容器技术,实训室能够创建动态、可扩展的测试环境,使学生能便捷地在单一硬件平台上并行部署多种操作系统和应用环境,进行全方位的软件兼容性测试、性能压力测试、安全性渗透测试等。整合诸如Selenium、JMeter、Docker等业界领先的开源测试工具与框架,不仅有效控制实训成本,而且通过实战操作,极大提升学生的实践动手能力和面对复杂问题的解决策略,为他们日后的职业生涯奠定坚实基础。
(3)实训室制度建设
构建一个高效运行的实训室管理体系,需制定详尽的规章制度,覆盖设备的标准化使用流程、严格的数据安全政策、以及知识产权的保护机制,确保实训活动的规范性与安全性。采取先进的访问权限控制与数据加密技术,保护敏感信息免受威胁,维护实训室的良好秩序。此外,引入项目管理理念,建立一套包含项目申报、进度跟踪、成果评价在内的实训项目管理系统,激励学生参与到真实的项目实践中,通过团队合作与项目驱动学习,不仅提升了学生的专业技能,还增强了他们在团队协作、项目规划与执行方面的软实力,为培养全面型软件测试专业人才提供了有力支撑。
三、高职软件测试实训室空间设计
四、高职软件测试实训系统组成
(一)软件测试实训系统教学平台
平台基于spring cloud微服务架构,提供便捷的SSO单点登录,采用kubernetes进行部署,可支持公有云、混合云、私有云的安装模式,数据层使用MySQL集群和MongoDB集群,实现了全流程EdvOps自动化运维,具有高内聚、松耦合、业务单一、高性能、高并发、高可能、跨平台、跨语言等特点。主要模块有课程制作工具、云盘、共享课、我的课、云优选课、云视频库、3D模型库。
课程制作工具:由平台提供专用的微服务模块进行支撑,采用websocket双向通信技术,底层存储采用三层递进的缓存方式,目的就是为了加快课程资源的加载速度。自主研发视频转码,在线视频剪辑功能。支持由word文档直接导入,并且根据标题类型自动生成目录,方便快捷。同时支持ppt、excel、图片、超链接、视频、音频、3D模型、章节测验等内容的插入,实现多个超文本文件的同屏展示。
共享课:使用订单配发或校内共享的概念,让课程资源更大程度的进行共享。
我的课:支持从共享课资源中直接进行“生成副本”,导入进我的课中,并且同时支持自行创建。所有的课程资源支持导出功能,可导出为本地的离线文件,导出文件为后缀名为wz的加密文件,在使用平台进行二次导入直接生成课程资源,便于线上传播。
云优选课:由行业资深从业人员在互联网上收集整理的学习资源,包括系列类学习视频和知识点类学习视频,供教师和学生进行自主学习。
云视频库:平台提供数百个包含各专业的微课视频,可直接引用到课程资源中。
3D模型库:采用three。js技术,实现在线加载3D模型,提供更加直观形象的教学体验。
题库:题库支持通用题目(单选题、多选题、判断题、填空题、主观题)以及实训题目(编程题、web前端题、虚拟化题等);对于通用类题目可采用excel模板批量导入,采用瀑布流的展示方式,可共享到校内供其他教师进行使用。
作业:支持手动建题和从题库中选题两种模式创建作业,提供作业库模块,作业库内的作业可多次发放给学生,对于作业平台提供自动评测,包括单选题、多选题、判断题、填空题、编程题、虚拟化题。
考试:支持导入试卷、手动创建、题库选题三种创建方式,同时支持系统随机组卷功能;提供试卷库模块,试卷库内的试卷可多次发放给学生,支持试卷的自动判分。
课堂活动:平台支持多种课堂活动,如:签到、主题讨论、提问、分组任务、投票、问卷、计时器等,提高课堂的趣味性和参与性。
个人云盘:平台将用户在备课,教学等过程中使用的文件,保存在个人云盘空间,支持二次直接使用和存档,实现云文件的保存。
(二)软件测试实训系统
平台采用B/S结构,运用spring cloud微服务技术,构建多个稳定、高效的服务模块,提供SSO单点登录服务,并使用统一的身份认证鉴权。平台基于k8s实现公有云、混合云、私有云多种部署方式,提供在线软件测试实训系统的运行环境,并内置代码运行结果检测,自动进行测评统计,实现真正的云开发,开箱即用,主要模块有课程制作工具、作业、活动、云盘、共享课、我的课、云优选课。
便捷的实验制作工具:让教师轻松实现pdf、ppt、word、excel等不同格式的文本、图片、音频、视频、超链接等进行混合编排,并自动生成动态实验目录,从而实现不同实训资源同屏展示。
智能代码评测,助力软件测试实训系统实训:平台支持在线对学生提交的实验代码进行评测,将评测结果统计分析后展示给教师,提高教师的教学效率,方便学生的学习过程。
提交代码查重,防止抄袭:对于学生提交并且通过测评的软件测试实训系统实训代码进行代码的查重,防止学生互相抄袭代码。
在线问答,及时解答学生疑问:平台提供软件测试实训系统实训的在线问题,学生在软件测试实训系统实训过程中,通过在线问答及时与老师进行沟通,提高学习效率。
可记录学习情况的实验笔记:平台为用户在软件测试实训系统实训页面提供实验笔记功能,用户可在实验过程中记录下自己的笔记。
实验题解,帮助学生掌握实验知识点:平台会在每个软件测试实训系统实训题目后面,提供相应的实验题解,教师可改变其是否展示给学生。从而让学生在实验完成之后进行学习,更好的掌握实验的知识点。
支持高并发的评测服务:平台采用kafka消息队列来处理评测的请求,并内置高配置的底层沙箱服务,支持高并发的用户同时使用。
学生测评结果自动统计:平台将课堂内的用户的评测结果进行统计,按照消耗内存、消耗时间两个维度进行展示,从而直观的展示该实验的整体评测数据。
支持公共资源课程,便于老师教学:软件测试实训系统可内置完整的实训资源,其中包括实训文档以及在线资源包,用户可以直接进行使用。
个人云盘,资源不丢失:平台会为用户提供云盘服务,云盘内所有文件都会按照不同的文件类型进行分开,便于用户查看和操作。
平台支持Web前端应用程序开发、web企业级开发、数据库设计等实验。
(三)软件测试实训系统被测平台
软件测试被测平台即为学校打造了集高效率、低成本等特性于一身,大幅缩短了软件产品测试周期,并且可以提升产品品质,同时还能充分发挥虚拟化的优势,减少物理工作站的数量,和降低客户的IT系统能耗、提高了空间使用效率的软件测试工作空间。安全在任何服务器实现中都是一项核心挑战。承载多台虚拟机(VM)的服务器(也称为合并服务器)不仅要承担与非合并服务器同样的安全风险,还要面对管理员角色分离的挑战。软件测试平台有助于提高合并服务器的安全性和解决管理员角色分离的挑战。通过下列功能来实现此目的:强大的分区能力、硬件级别安全性、WindowsServer虚拟化、网络安全功能和最小的受信任计算基础。服务器虚拟化使具有不同资源要求的工作负载能够在同一主机服务器上共存。软件测试平台通过灵活的内存分配、动态的硬件添加和灵活的网络配置,大幅提高主机服务器的物理资源的使用率:软件测试平台采用基于64位管理程序的轻型、低开销虚拟化体系结构,通过多核心支持,可以为每个VM分配多达8个逻辑处理器,同时支持64位主机和来宾操作系统,此外,通过服务器硬件技术打通从GuestOS到真实硬件资源的通路,避免在VMM层的IOmapping,指令转换和数据迁移的漫长过程,减少80%虚拟化应用导致的性能损失;在可能部署的数据中心和远程分支机构安装中,需要强大的管理功能和自动化功能来完全实现虚拟化降低成本的可能性。软件测试平台通过可扩展管理、用于VM管理的界面以及PowerShell脚本和组策略对象(GPO)管理和自动化功能满足了此需求;同时对于硬件平台监控管理系统可以满足端到端的全程管理。