王 妍, 高仲合, 倪建成
(曲阜师范大学 软件学院,山东 曲阜 273165)
高等工程教育正面临着范式转变。工业4.0背景下,工程教育必将发生全方位的变革,其人才培养标准与培养模式面临着新的严峻挑战。如此背景下,软件测试专业如何培养出具有工业实践能力的人才,是目前亟待解决的问题。
软件测试专业课程要求理论与实践并重,具有强烈的工程和项目背景,学生常感觉课程内容抽象、空洞、缺乏项目引导。另外,结合软件测试课程理论性强,涉及自动化测试软件多的特点,建立全方位、一体化的虚拟学习环境是解决问题的关键[1]。
软件测试专业课程理论学时有限,实验学时严重不足,教学中存在如下问题:
(1)现有的软件测试课程学时数不足,教学安排死板,难以达到测试行业对测试深度、广度及实践能力的要求,学生的实践能力难以达到企业的用人需求,实践性教育的针对性不强。
(2)软件测试行业存在众多的测试方法和测试工具,学生要不断接受新思想、新理念、新方法、新技术才能跟上行业的发展,而软件测试教学过于理论化,缺乏企业级的案例,很多有实践意义的案例需要购买,对教学经费紧缺的高校来说,实践教学是一个很大的挑战。
(3)现有软件测试实践教学的实验时间过短,很多测试实验需要长时间运行脚本,时间太短容易出现实验脱节现象。
(4)学生的实验地点过于限制,一些自动化测试及测试管理软件只在机房安装,学生只能在院系实验室完成,不利于随时实验。
(5)测试行业的自动化测试工具众多,很多企业采用的商业化工具需要购买才可以使用。这些昂贵的、专用的商业工具难以应用在教学过程中。
信息和通信技术(ICT)的快速发展与商业化,对包括教育在内的许多行业产生了深远的影响。近年来,在线学习已经成为当今世界高等教育最重要的发展趋势之一。传统的学习方式已逐渐转向e-learning,传统的面对面教育环境也转变为虚拟学习环境(Virtual Learning Environment,VLE)。要改变软件测试教学中存在的问题,建立在线虚拟学习环境(Online virtual learning environment,OVLE)是一个很好的方法[2]。在线虚拟学习环境将为学生、教师和管理者提供更优越的使用平台,其优势体现在:①为个人和小组建立广泛的信息沟通渠道;②师生共享丰富的学习资源;③提供一个校企协同育人的平台,共享校企资源。
软件测试OVLE平台是一个集软件测试教学资源、实验资源共享、实验过程展示、实验结果评价于一体的自助式教学平台。学生可以通过该平台在线学习软件测试基础的相关课程,完成相关实验项目,保存实验结果。教师可以通过该平台上传教学视频、教学资源、实验内容、实验要求、实验步骤以及对学生的实验结构进行考核、评价和反馈。另外,该平台将整合软件测试专业方向课的各种教学资源,精选有代表性、典型的测试案例,将企业实际项目引入到该虚拟学习平台上,让该平台成为学生拓展学习的资源库,教师深化学习的有力后台。通过该平台的实施,将达到如下目标:
(1)整合学习资源。以企业实际项目为素材,改革传统以理论为主的软件测试核心教学内容,建立以项目时间为主线、理论指导实践的软件测试特色实践教学内容,建立电子资料库,方便学生随时学习及查阅资料。
(2)建设虚拟测试实验平台。将软件测试专业需要用到的各种实验素材整理到该虚拟学习平台中,将测试全生命周期平台(ALM)、缺陷管理平台(TestLink)、缺陷管理软件(Mantis)、功能测试软件(UFT)以及性能测试软件(LoadRunner)集成,以企业实际项目作为驱动,建立完整的虚拟测试实验平台,为学生提供企业级综合实训测试工作平台[3]。
(3)教师在线教学环境建设。将传统教学中的面对面教学与在线教学相结合,采用多种教学模式、方法和工具,优化学习成本和教学成本,设计混合学习环境,将传统实体课堂与虚拟教育元素有效结合,构建个性化学习环境。该教学平台将提供更多的学习模式,如翻转课堂、移动学习、慕课、游戏化学习等,满足学生的任何学习需求;该平台将充分体现以学生为中心的学习体验,促进师生互动,鼓励学生投入学习,以项目驱动教学,通过慢教深学、混合、迭代等方法,让学生充分实现个性化学习。
随着该平台建设的进一步推进,未来OVLE将更具复杂性、有效性、挑战性和吸引力,并更加强调参与、互动、协作和实时交互。
以在线和虚拟为出发点,软件测试OVLE环境将由三大模块构成:前台教师教学模块、后台虚拟实验模块、平台管理模块。其中,前台教师教学模块提供教学内容的在线视频及教学资源的共享;后台虚拟实验模块由各种自动化测试及管理工具组成,采用虚拟技术,将商业软件纳入其中;平台管理模块提供学生管理、教师管理及平台构件管理等功能。其基本构成图见图1。
图1 软件测试OVLE环境构成图
软件测试虚拟实验平台采用B/S架构,由开源测试管理平台、缺陷管理平台、HP商业测试管理平台及被测系统4个模块构成,整体采用PHP+MySql完成,其中HP-ALM平台和被测系统Discuz论坛由VMwareWorkstation创建的虚拟机模拟实现,其结构见图2。
图2 软件测试虚拟实验平台结构图
开源测试管理工具TestLink和缺陷管理工具Mantis可以完成一个测试管理的完整过程,从项目创建到测试需求分析到测试计划制订到测试用例的设计到执行测试,最后分析测试结果。惠普应用程序生命周期管理(HP Application Lifecycle Management,简称HP-ALM)系统是HP公司的商业测试过程管理系统,购买后拿来做教学用不太现实,现在利用VMWareWorkStation搭建ALM的虚拟学习环境,让学生能够通过虚拟平台掌握商业软件的使用过程。被测系统Discuz论坛是一个论坛管理系统,作为被测系统,该网站具有完备的论坛管理功能,包括用户发帖、回帖、置顶、会员注册管理、权限管理、日志管理等。为了支持上线后庞大的用户访问量,保证稳定的系统运行,需要对Discuz论坛进行功能和性能测试。现在通过VMWareWorkstation创建Linux虚拟机,将Discuz论坛部署在该虚拟机上,学生通过终端地址访问该系统,借助自动化测试工具HP-UFT和HP-Loadrunner进行功能和性能测试。
通过该系统的虚拟环境的搭建,学生可以体验企业级EPR实训,自己组建团队,制订测试计划,分析测试需求,每个学生担任公司中不同的员工角色,模拟真实测试公司进行测试过程,从而将各个测试工具利用实训联系起来,完成一个完整的测试过程。
虚拟学习平台的前台教学环境由教学视频模块和学习资源模块及师生交流三大模块构成,其中教师平台包括课件提交平台、教学视频提交平台、实验内容上传平台、作业下达平台及师生互动平台构成,学生平台由签到模块、网上课堂模块、自我练习模块、学习分析模块、实验练习模块构成,管理模块由教师管理模块和学生管理模块及学时模块构成,其基本构成图见图3。
教师可以通过平台独立进行教学过程的设计,通过上传课件、教学视频、课后练习题目为学生提供网上课程的教学资源,学生通过网络课堂可以进行多次反复学习,然后进行自我练习及实验环节,在自我学习分析模块可以通过对学生答题情况的分析,建议其薄弱知识点再学习,通过反复的主动式学习,达到对知识的深化理解。
软件测试专业知识被组织在多门课程中,各门课程独立施教,课程内容由教学负责人根据课程目标设定,且各门课程所采用的教学案例也相互独立,学生学习一门课程时难以与其他课程相联系。该平台将重新组合测试专业教学模块,使得教学内容更有联系性,学生可以通过该教学平台进行自助餐式的自主学习,见表1。
表1 课程模块与学生能力的对应关系
图3 软件测试虚拟学习环境构成图
现有的教材理论性较强,缺少实践性及案例应用。通过该实验平台的实施,将重组软件测试基础这门课程的基本知识点,对每一个理论知识增加案例操作,将测试理论与测试工具的应用更充分的结合,然后将知识点做成小视频上传到教学平台。教学资源分为5个模块:软件测试基本理论、缺陷及缺陷管理、测试用例设计方法、软件测试过程管理、自动化测试工具介绍。其中每个模块包括的具体内容见表2。
表2 软件测试教学内容及对应教学案例
该课程具有相当强的实践性,而且自动化测试及管理工具相当多,只有保证学生有充足的实践课程,才能真正提高操作能力。因此在课程大纲设计上,将增加实践性教学的学时,以体现该课程较强的实践性。通过该虚拟实验及教学环境,学生可以自行登录学习,只有当前自主学习达到一定的学时后,才可以进行下一部分的学习,具体设置见表3。
表3 学生自学内容及学时
从教学学时看,该门课程的理论学时和实践学时基本实现了1:1的比例,充分体现了课程的实践性强的特点,也为学生提供了充足的自主学习及动手操作的时间。
在软件测试教学计划中,为了深化学生对整个软件测试课程的理解,提高动手能力,我们引入了两周的软件测试综合实训。通过该虚拟学习平台的实验环境,学生以小组为单位完成一个CRM客户关系管理软件的测试过程,其实训过程的任务分配、时间设置及交付结果见表4。
经过软件测试OVLE环境的虚拟实验平台,学生可以分组完成综合实训,通过实训更深刻地领会所学知识,在工作中感悟升华知识,从而达到学以致用的高度。
通过该虚拟教学平台的实施,将重构软件测试专业的课程模块及每一模块的具体课程内容;进一步搭建软件测试虚拟学习环境,提供师生自主教学及自主学习的平台。该平台建设以“新工科”改革倡议为背景,根据学科实际特点出发,提出了合作学习、整合教育信息资源、创建虚拟学习环境的新思想,并为平台的实施提出了具体的步骤及方法。通过该平台可以培养新工科学生个人效能、知识能力、学术能力、技术能力、社会能力五大核心能力,并能促进学生发挥自主学习能力,实现自我学习评测。
表4 实训过程任务表