高职软件测试方向人才培养模式实践

2015-12-10 23:26林勤花
教育教学论坛 2015年33期
关键词:全生命周期软件测试

林勤花

摘要:软件测试行业的迅猛发展,急需大量高素质的软件测试人才。本文介绍四川信息职业技术学院软件测试方向人才培养模式的实践,包括软件测试方向和软件开发方向的融合,实现就业分流;软件测试课程体系的设计;使用业界流行的软件测试工具搭建软件测试实验室;创新的毕业设计模式;贯彻“全生命周期软件测试”的测试理念。

关键词:软件测试;全生命周期;方向融合

中图分类号:TP311.5 文献标志码:A 文章编号:1674-9324(2015)33-0272-02

四川信息职业技术学院信息工程系软件技术专业自2006级起开始开设软件测试专业课程,2009级组建海辉测试专班。从2011级开始,把软件测试作为软件技术专业的典型工作岗位,把软件测试方向和.Net程序开发、Java程序开发、移动应用开发和软件外包服务方向有效的结合起来,在模块化人才培养方案中加入了软件测试的课程体系,形成了独特的软件测试方向人才培养模式,培养的软件测试人员具备了软件开发的基本技能、掌握了软件测试专业知识,就业竞争力强,值得借鉴、推广。

一、软件测试行业的发展现状

随着IT业的迅猛发展、信息化的普及,社会各阶层对软件质量的要求越来越高,迫使软件企业更要重视软件质量,而作为软件质量的把关者,软件测试工程师日益走俏。国际公认的行业标准中规定软件开发人员与软件测试人员的比例是1:1,而我国目前的平均水平在3:1,有些公司甚至达到7:1。目前高等教育中开设软件测试专业的较少,形成软件测试人才紧缺、需求缺口大的现象。中华英才网显示,目前软件测试人才的缺口在30万人以上,IT行业国内外巨头正在加紧争夺软件测试人才,华为一次抛出50名软件测试人员的招聘大单,而联想、用友等企业也纷纷打出高薪招聘软件测试人才的启事。随着软件测试行业的不断发展,北京、上海、深圳等将带动其他城市一起发展。

二、软件测试方向人才培养模式的实施

传统观点认为,软件测试是学不懂编程的人员、“家庭主妇”从事的工作,没有任何技术含量。目前,这种观点正在改变,软件测试不是一份简单的、低层次的工作。软件测试人员除了需要掌握相关计算机知识、软件工程基本知识,熟悉软件项目编程语言、项目技术架构和数据库,了解网络技术、操作系统的基本知识外,还需要掌握软件测试的专业知识、软件测试自动化测试的相关理论和工具等。因此,软件测试是可以单独作为一个专业来开设的,有些学校开设有软件测试专业或方向。以下是我们在软件测试方向所做的工作。

(一)方向融合、就业分流

没有申报软件测试专业,也没有开设软件测试方向,而是把软件测试和其他几个软件开发方向有效结合起来。坚持“平台+方向”的原则,在各个方向采用模块化教学模式。1~3学期上平台课程,包括《计算机应用基础》、《微机组装实训》等计算机基本技能课程、《静态网页》、《PHP动态网站开发》等网站开发课程、《C程序设计》、《C#程序设计》、《Java程序设计》等业内流行编程语言和《数据库应用》、《Oracle数据库设计与建模》等数据库课程。第3学期期末,学生根据自己的兴趣和意愿选择方向,可选择的方向有.NET程序开发、Java程序开发、Android移动应用开发、软件外包服务和软件服务共五个。4-6学期,除了软件服务方向外,其他四个方向均开设软件测试专业课程。把软件测试方向和软件开发方向有效融合,相辅相成,在就业时开发、测试均可选择,实现就业分流。

(二)前沿的专业教学内容

开设有《软件测试基础》、《软件测试综合管理应用》、《软件系统自动化测试》和《软件测试综合实践》四门课程,由浅入深,从学校到企业,分阶段进行。

《软件测试基础》课程讲授软件测试的基本概念和基本理论,帮助学生理解和掌握软件测试的基本方法和基本技术,要求学生能够撰写常用的软件测试文档,包括软件测试计划、软件测试用例、缺陷报告和测试报告等,了解软件测试流程。

《软件测试综合管理应用》课程是在学习了《软件测试基础》的前提下,以实践为主,对一个真实的项目进行功能测试。选取真实的项目,有完整、真实的需求,在理解需求的基础上,开展测试活动。在Quality Center(QC)环境下,从项目管理到项目定制,再到软件测试的整个过程(需求管理、测试计划、执行系统测试、缺陷管理),最终提交软件项目测试报告。通过该门课程,学生对软件测试流程加深印象,并能够熟练的编写测试用例对项目进行系统测试。

《软件系统自动化测试》课程主要讲授自动化测试脚本和自动化测试工具的使用。使用HP-Mercury公司的自动化功能测试工具Quick Test Professional(QTP)和自动化性能测试工具LoadRunner(LR)。该课程在讲授时采用案例驱动,通过对桌面/web系统进行测试,提高学生的动手能力。授课从场景录制引入,以自动化测试脚本编写为重点,把QTP、LR和QC综合运用起来,尽最大可能模拟真实的软件测试工作环境,提升学生综合运用各种流行自动化测试工具进行系统测试的能力。

《软件测试综合实践》是为期两周的综合课程设计,由专业培训机构将企业级项目带到学校或把学生送到专业培训机构,模拟软件公司工作、测试场景,组织学生搭建测试环境,进行软件测试综合实践,并撰写软件测试相关文档。让学生进一步掌握软件测试的方法、技术和工具的使用,让学生对软件测试职场的工作环境、素质要求和团队协作精神有深刻认识和体会。软件测试人才培养课程体系如图1所示。

(三)充分的实习实训环境

模拟企业级的软件测试环境,使用业界流行的软件测试工具对软件系统进行测试和分析,使用软件测试管理工具对整个软件测试流程进行管理,校内学的就是企业用的[2]。通过市场调研,结合权威测试网站51testing历年调查数据和历届毕业生反馈信息,组建惠普软件测试实训室。该实训室包括了业界最流行的三个软件:软件测试管理工具QC、自动化功能测试工具QTP和自动化性能测试工具LR。

(四)创新的毕业设计模式

除了软件服务方向外,其他四个方向学生的毕业设计采用“1+1”的模式,即一个学生做系统开发,另外一个学生做系统测试。采用“W模型”,从系统需求开始直至最后的系统测试,两名学生模拟软件企业中的开发人员和软件测试人员,共同完成一个系统。

三、效果和下一步工作

在当前各高职院校信息类专业不断萎缩的情况下,我院软件技术专业招生形势则越来越好,从原来每届2个教学班到目前5-6个教学班的教学规模,且学生的对口就业率达到70%。虽然取得了一定的效果,但为了长效发展,还需要努力。以下是下一步工作:

(一)深入校企合作

校企合作是一种“双赢”模式,学校与企业信息、资源共享,让学生在校所学与企业实践有机结合,节约教育成本。目前,我院正与四川华迪共同开发《企业案例软件测试技术》教材,与惠普公司正在协商组建软件测试专班。今后,还需与企业在教材、教学资源、师资、人才培养等进行全方位的合作,力争组建订单、定向培养专班,培养更多、更专业的软件测试人才。

(二)建设软件测试资源库

在当前正在建设的《软件测试技术》慕课平台上,通过从企业、网络、已毕业学生等收集资料,丰富该平台。软件测试是一门注重动手实践能力的学科,案例驱动是最合适的教学方法,应当收集合适、优秀的案例,以便教学。

(三)加强师资队伍建设

教师是教育质量的保证,是实现人才培养目标的关键。师资队伍建设对全面提高高职教学质量、实现人才培养目标、学校的持续发展都有着重要的意义。当前我院软件测试平台师资稍显薄弱,人员紧缺,无企业工作经历。从企业引入一名从事测试工作的软件测试工程师,定期委派教师参加各类软件测试教学研讨和培训,选派教师到软件公司实习,从事半年以上的软件测试工作,提高教师的实践能力。

(四)成立软件测试工作室

随着职业教育的改革、工学结合、项目导向课程的不断推进,各职业院校教师工作室也纷纷成立。在引入企业教师后,成立软件测试工作室。学生教师双向选择,和起航工作室、维诚工作室精诚合作,由老师去承接软件测试项目,师生共同完成项目的测试。

参考文献:

[1]2014-2017年中国软件测试市场调查报告(01170206)[DB/OL].尚普咨询.

[2]邱珊.软件工程专业软件测试平台建设实践[J].现代计算机,2012,(26):67-69.

[3]宋维堂,张淑梅.关于高职教学资源库的建设[J].职教论坛,2011,(17):20-22.

[4]2013年第七届软件测试现状调查报告[DB/OL].51testing软件测试网.

猜你喜欢
全生命周期软件测试
基于OBE的软件测试课程教学改革探索
EXCEL和VBA实现软件测试记录管理
关于软件测试技术应用与发展趋势研究
全生命周期视角下基础设施类PPP项目利益相关者分析
智能电能表软件测试技术概述
《软件测试》课程教学策略研究