对高校进行软件测试课程教学的探索

时间:2022-06-03 10:31:56

对高校进行软件测试课程教学的探索

摘要:为了扭转高校对软件测试人才培养存在的一些意识误区,通过阐述软件测试的专业内涵,提出高校在教学中引入软件测试课程必要而可行,只要转变思想,在教学中模拟企业的测试案例,锻炼学生的综合素质,就可以培养出深受企业喜爱的软件测试综合性人才。

关键词:软件测试;测试工具;测试管理;企业需求

中图分类号:G642 文献标识码:A 文章编号:1009-3044(2014)32-7664-02

Abstract: In order to reverse the misunderstanding in College of Software Testing Talents Training, through explains the intension of software testing,proposes the teaching was in the software testing course necessary and feasible, as long as the change of thoughts, simulation test case of enterprises in the process of teaching, students' comprehensive quality training, can cultivatecomprehensive talent of software testing by enterprise love.

Key words: Software testing; test tool; test management; enterprise demand

自上世纪80年代,伴随着软件行业的发展需要,软件测试的基础理论和实用技术开始形成,经过三十多年的发展,软件测试在软件开发行业中的角色越来越重要,我们目前评价软件测试,它即需要工具和技术的支持,更需要有科学的管理体制,它既要保证软件能够健壮运行,又要保证软件的功能完全符合客户的需求,一个好的测试队伍,是软件开发必不可少的依靠,尤其是复杂的软件项目,开发和测试要亲如手足,才能保证项目的顺利进行。

目前高校的软件相关专业的毕业生,大约有1/5的人在5年之内从事过或最终从事软件测试相关的职业,这是一个相当大的比重,同时也反应出社会上对软件测试职业的缺口很大,众所周知,高等教育往往落后于企业的实际发展,这种“厚基础,宽口径”的办学宗旨已经盛行了很多年,当然,在许多专业领域,这种以不变应万变的培养体系是最明智的选择,但在计算机软件教学领域,因为这个学科的发展速度几乎超乎人类的想象,因此我们必须让学生在校园里感受到计算机企业中对计算机技术的需求方向,这样才不至于在学生走出校园时无所适从。软件测试职业的职位待遇稳步提升,而且其职业寿命要远远长于软件开发,从学生的职业规划角度来看,在高校进行软件测试中高级人才的培养是一条可行之路。

1 高校开设软件测试课程的必要性

事实上,在高校计算机教学体系中开设软件测试课程,并不单单是为了迎合企业的需求,软件测试是软件工程课程的延伸,是软件开发课程的补充,是软件管理课程的实践。

软件测试课程的基础学科涉及数学、计算机导论、软件工程、计算机组成、管理学和信息技术等,如果没有这些学科的支撑,软件测试无法深入学习。

软件测试课程的开设,对高校计算机软件专业的学生来讲,是有着非常大的意义的,目前很多大型的软件企业并不担心开发人员的招聘,而对熟练掌握软件测试技术和管理方法的高级测试人员求贤若渴,这一方向的职业缺口确实非常之大,究其原因就是目前几乎所有高校的软件相关专业都开设了软件开发从技术到管理的全套课程,而软件测试的相关课程几乎为零,这样的学生走出去,很难迅速掌握测试的理念,也无力制定宏观测试计划,不得不从测试行业最低端的测试员开始做起,这对于高校毕业生来讲这是一种人才的浪费,在高校的计算机课程体系加入软件测试内容已经迫在眉睫。

在任何一个行业,从业人员对行业的成熟度区分,是企业招聘首先要考虑的问题,我们经常在招聘信息中看到“有工作经验”这样的条款,在软件测试行业也是如此,一般给出5种分级:1级我们称之为用户级测试人员,这一级别的测试人员直接扮演客户的角色来使用软件,看是否能发现问题;2级是软件测试操作员,这类人群受过一定程度软件测试的专门训练,可以执行上级下达的具体测试任务;3级是软件测试技术员,这一职位人群有很多软件测试的经验,能够非常熟练的使用某些软件测试专门技术,能够设计测试用例;4级是软件测试系统工程师,他们具有相当广泛的计算机相关专业知识,熟悉软件开发,熟练掌握所有软件测试技术,并具有项目管理经验;5级是软件测试总工程师,总工程师负责管理整个软件测试项目,具有掌控全局的能力和技术。

高校软件测试人才的培养,其目标要向3级人才靠近,并且这些人才有向4级或5级成长的持续发展能力。

2 软件测试教学中需要重视的两个问题

2.1扭转重开发,轻测试的偏见思想

很多人轻视软件测试,认为软件测试无需具备很高的技能,是没有前途的工作,缺乏创造性,很多高校也存在重开发,轻测试的思想,学生在这种观点的熏陶下,也对测试工作存在偏见,其中对软件测试工作有三个认识误区尤为突出:首先,软件测试是软件开发完成之后才进行的,只是软件编码的最后一个阶段,其地位可有可无。其次,软件测试不需要具备很高的专业技能,工作乏味枯燥,不具创造性,最后,软件投入使用后一旦出现BUG,测试人员要负主要责任。

事实上,首先,一个好的软件测试团队,在软件需求分析阶段就已经开始测试了,开发人员理解的客户需求是否正确,要由测试人员监控和保证,测试工作和开发工作是并行的,尤其在软件项目开始的时候,监控和防范一个微小的问题或隐患,是为了防止软件成型后出现无法挽回的缺陷。其次,软件测试是一项综合技能能强的工作,运用测试工具的能力,与人沟通的能力,有效管理的能力,书写文案的能力等等,做好软件测试工作绝对不是想象的那么简单,而且一旦具备了综合测试的素质,将是受用终身的资本。最后,软件测试规范实施后,软件仍然可能出现BUG,这是开发和测试人员应该共同面对的现实问题,测试人员只能保证BUG越来越少,越来越不影响系统的健壮运行。

2.2强调管理与技术并重

软件测试的规范实施需要测试技术和管理方法两方面的支撑,如果不具备专业的测试技术,只能做一些简单的功能测试,如果不具备宏观管理计划的能力,只能处于被指挥状态进行片面测试的实施,现在软件测试真正缺少的是技术和管理兼备的人才,高校的学生素质非常适合软件测试高端人才的培养。高校的培养中,要让学生深刻理解,我们培养的学生不是只能低头做测试任务,而是要能指挥测试工作,这绝对不是件简单的工作,需要全面的技能和完善的人格,只有这样的人才,才能带领出出色的测试队伍。

教学中,增加实训环节,给学生安排丰富的实例和习题,最好采用实际软件项目的测试案例,让学生在学校感受到企业中一样的工作环境,并安排和企业中一样的测试岗位,让学生体会沟通和管理的必要,在独立处理问题的过程中激发学生的学习兴趣,促进理论和实践教学的结合,把对学生的应用能力的培养融汇于教学中。

3 软件测试专业课程设计的目标和原则

软件测试专业要全方位的培养和提高学生的基础理论、实践能力、设计能力、实践训练等综合素质。重视管理、人文、经济等知识的学习。

3.1软件测试专业课程设计的目标

高校软件测试培养目标要以市场为导向,培养具有一定的设计测试计划方案的、具有管理能力,能平衡整个测试项目各方面因素的软件人才,这些人才要具备软件开发的整体认识,能制定和执行测试,能利用测试工具完成一定测试任务。

本专业课程的重点包括:软件缺陷生命周期管理;软件测试基本概念的内涵;主流测试工具的应用;进行全面的系统测试的方法;注课程以实训为主,重动手能力的培养等。 具体课程要涵盖:熟练掌握至少一种数据库应用技术及一门软件开发语言;了解软件开发过程中软件测试的重要性;掌握主流的自动化测试工具;科学管理测试队伍。

3.2软件测试专业课程设计的原则

课程的设计要体现与时俱进的精神,以企业的实际项目为依托,主要原则包括:

1)开展项目教学,项目教学具有针对性、研究性、启发性和实践性等。项目的选择要知识涵盖全面,要能够激起学生的学习兴趣。

2)制定专业课程计划、课程大纲和教学方案等,课程计划提倡电子化、网络化和课堂教学并用,建设校企合作的专兼结合的教学团队,开设以项目为载体的教育大纲,用以指导课程教学工作的开展。

3)建立测试工程内容的课程结构模式,把真正的测试项目开展到课堂上来,或者让学生在学习期间进入企业进行岗前培训,充分安排工程实践,引进软件测试的工程师资格认证,同时逐步建立科学的工程教育检验和质量评估体系。

理论与实践并重,课程需要涵盖单元测试、集成测试、性能测试、功能测试与系统测试。注重设计和管理的执行过程。为学生创造可自由而主动的学习氛围。以学生为出发点,在软件测试中融会贯通大学里学习的软件相关课程,在项目驱使下培养主动学习的能力。采用分组讨论学习方式,结合实际项目,把学生组织为若干小组,在教师指导下完成工作。不断提升学校教师的专能,提供系统学习和阶段性培训机制。

4 总结

软件测试课程在高校的教学中,没有现成的经验和模式,需要我们根据行业的发展随时调整,以社会需求为导向,以培养行业

中高级人才为目标,以项目实训教学为依托,边进行边思考,逐步发展,逐步稳定,所以我们要以发展的眼光,灵活的策略来微调教学过程的细节,测试无处不在,高校进行软件测试的教学改革也是一种测试,只要我们采用严谨的工程控制策略,科学管理,总结规律,必然能取得高校进行软件测试课程探索的胜利。

参考文献:

[1] Ron Patton.软件测试[M].北京:机械工业出版社,2002.

[2] Myers G J.软件测试的艺术(中文版)[M].王峰,陈杰,译.北京:机械工业出版社,2006.

[3] 聂长海.关于软件测试的几点思考[J].计算机科学,2011,38(2):1-3.

[4] 董晓霞.软件测试工程化的研究和实践[J].计算机工程与设计,2006,27(11):23-26.

上一篇:也谈仿真实验在电工电子实验教学中的作用 下一篇:答疑解惑/最读者/读者支招/养生诗歌