- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件测试课程教学问题与思考
软件测试课程教学问题与思考
摘 要:本文分析并总结了大学本科计算机科学与技术专业和软件工程专业学生在软件工程课程学习中存在的若干问题,提出一些值得尝试的解决方法和建议,对学生提高学习效率及青年教师改进教学质量兼具现实的指导意义。
关键词:软件测试 教学 学习方法
在人们愈加注重质量与效率的当今社会,软件产品的质量自然备受IT行业与所有用户的关注。软件测试虽然只是软件开发工作中的一部分,却是控制软件质量的重要手段,在国内也是逐渐兴起的产业。统计数据表明[1],目前该领域需要大量技术型与管理型人才,由此,越来越多高校在计算机系低年级开设软件工程的基础上,将软件测试独立成一门课程在高年级开设。但是,由于该课程兼具理论性与实践性,加之认识偏差与学习方法存在一些问题,对于计算机专业与软件工程专业的高年级学生而言,要很好地掌握相关原理与技术也并非易事。本文结合笔者的工作实际,讨论了教学过程中发现的问题,并提出相应的解决办法与学习建议,希望能提高学生学习与教师教学的质量和效率。
一、认识上存在偏差
软件测试直到大学三年级才开设,虽然学生在之前的学习中已经接触了软件工程相关理论知识,但是毕竟缺乏对软件测试系统的学习,因此他们对软件测试领域各方面工作的认识难免是模糊不清的,甚至存在误解。这些错误的观点主要可以归纳为以下4类:
1.测试软件不如开发软件重要,很难得到重视,相关的工作岗位相对低等,前途比较渺茫。
2.软件测试就是在高频率使用软件过程中寻找BUG(错误),这样的工作没有编写程序的烦恼,远比开发软件容易地多,如果待测的软件是游戏软件,那就更加其乐无穷。
3.软件测试是软件生命周期中最后一个阶段的工作,在软件开发完成之后才能够测试。
4.既然找错误是软件测试人员的任务,那么如果测试完成的软件在真正用户使用时仍然无法满足他们需求,则说明该软件没有完全测试,应该归咎于测试人员。
对于这些不正确的认识,我们不能完全否定,因为从中可以看出学生对软件测试工作具有一定的积极性和较强的责任心,这正是他们应该具备的且难能可贵的素质。当然,更重要的是在教授相关原理及方法之前就应该澄清他们对软件测试的误解并加以纠正。因此,笔者依据权威网站公布的近几年软件测试从业人员的调查报告[2],在开学的第一堂课上就让学生们及时了解当前的行业动态:软件测试是IT行业新兴领域,越来越得到业界的重视且需要大量技术型与管理型人才,所以,学习该门课程的重要性与必要性毋庸置疑。同时,在第一章节关于软件测试概述的授课中,可以有的放矢地用举例子、摆事实最通俗易懂的方式阐明正确观点。例如,针对他们认为的软件可以完全测试这一说法,就使用如图1所示的反例证明完全测试是不现实的[2]。当然,仅仅利用前几节课的讲解很难让学生完全改变看法,填鸭式的灌输过程必然遭到质疑。所以,完整透彻的纠正过程是贯穿在整个学期的教学之中的。换言之,学生只有通过系统地学习软件测试相关内容之后才会更加正确并深刻地认识软件测试。
二、先行课的掌握不足
学生在之前几年的学习中已经接触了许多基础课程,包括离散数学、程序设计、软件工程等,而这些恰恰是学习软件测试必备的先修课程。但是,从上课的表现来看,学生对这些课程中一些重要的知识掌握不足,导致对新课的学习倍感吃力从而影响学习的兴趣和信心。主要表现为:
1.数学底子薄
软件测试中黑盒测试用例的设计方法大都以数学知识为依据的,例如,其中的等价类划分法与边界值分析法对应着集合论与函数知识、决策表驱动分析法与因果图法对应着命题逻辑知识。学生的数学基础不够扎实,因此,在介绍每一种新方法时需要花费一定时间复习相应的数学知识,否则,学生只能知其然不知其所以然,尽管老师费尽唇舌,学生也难以透彻地理解更难以灵活地运用方法。
2.代码分析能力弱
科学合理的软件测试流程是从软件需求分析阶段开始就一直伴随着软件生命周期而分步骤进行的。在与代码开发并行的单元测试阶段,便需要对代码进行检查和测试。这就要求学生既要懂得测试的技术又要具备分析代码结构的能力,甚至能够自己编写测试驱动程序。所以,当写代码成为学生的绊脚石时,他们就无法轻易地掌握该阶段软件测试的方法。
3.缺乏软件工程背景知识
软件测试是近几年在软件工程这个大环境下成长起来的,因此与软件工程体系有着千丝万缕的联系。例如,软件测试的对象是随着进度的发展而改变的,从需求分析阶段开始一直到软件编写整合完成,测试的重点相应地从软件需求说明书向软件的功能和性能转变。同时,软件测试在不同的软件开发模式下具有不同的特点。所以,如果学生对软件工程背景知识模糊不清,那么将来就很难在软件开发各阶段采用恰当的测试
原创力文档


文档评论(0)