自动化测试工具课程教学方案

时间:2022-10-23 12:15:39

自动化测试工具课程教学方案

摘要:文章结合应用型本科院校软件测试人才培养目标,根据笔者教学实践,提出自动化测试工具课程的教学组织结构。从课程内容设置、教学方法及组织形式、考核方式等诸方面,进行深入分析和总结,提出分组教学的Web项目测试实践。这种教学方法提高了学生的实践动手能力,为其就业打下了坚实的基础;同时也为即将开设此类课程的其他院校提供了实践经验。

关键词:软件测试;自动化测试工具;实践教学;分组教学

1开课背景

软件测试是提高软件产品质量的关键步骤,它是伴随着IT产业的发展而出现的。目前,越来越多的软件企业设置了测试工程师岗位,但测试人才却面临巨大的缺口。高等院校作为软件人才的重要输出基地,每年为IT产业提供了充足的人力资源保障[1-2],但软件测试起步比软件工程要晚,所以国内高等院校几乎没有制定专门的软件测试人才专业培养方案。而学生掌握软件测试相关知识,也仅仅是通过软件工程课程中关于软件测试知识的介绍,或者是通过软件测试课程。很多高校在软件测试课程教学中以理论为主,学生很难在这类课程中掌握实用的软件测试技术,进而在求职过程中也难以应聘对测试要求较高的测试工程师岗位。基于以上背景,我院于2008年在软件工程专业中设立软件测试方向,制定了科学系统的软件测试人才培养方案。自动化测试工具作为该专业方向的必修课,是学生了解和掌握自动化测试理论及工具使用方法的重要课程。本课程以软件功能测试自动化和性能测试自动化为主要内容,介绍自动化测试理论及自动化工具的使用。课程以实践为主,理论结合,学生通过实践操作,可以掌握自动化测试理论及测试工具中的关键技术,为成为一名测试工程师打下基础。

该课程在我国本科院校中开设面并不广,相关教学经验及教学资料缺乏。但从长远来看,随着软件测试人才培养模式的不断成熟,该类课程的开设必将成为趋势。本文根据笔者自动化测试工具课程的教学实践,总结课程教学经验、课堂组织形式等内容,希望为将来开设该类课程的兄弟院校提供经验支持。

2课程内容设置

测试过程中使用自动化测试工具是提高测试效率的重要手段,目前主流的自动化测试工具以功能测试和性能测试为主,其中应用比较广泛的包括惠普公司系列的自动化测试工具以及IBM系列的自动化测试工具。本课程在教学中以惠普公司的功能测试工具和性能测试工具为主。在专业教学计划中,该课程课时安排为64学时,其中理论课占18学时,实践占48学时。本课程设置的出发点是让学生通过课程掌握自动化测试工具的使用,因此实践学时所占比例较大。在理论部分主要讲授:自动化测试的产生、自动化测试的定义和引入、自动化测试工具的作用及优势、自动化测试脚本、自动化测试生存周期方法学、软件自动化测试工具简述等内容,同时在学习自动化测试工具的使用之前,在理论学时部分讲解该工具的工作原理。

3教学方法与组织形式

自动化测试工具课程实践性较强,因此在整个教学过程中,应以学生自己动手操作为主,任课教师只是对学生进行必要的指导。在每一个实验结束后,任课教师对实验进行总结,讲解实验中存在的共性问题,同时讲解每一个实验中涉及的知识点,以加深学生的理解。

在“录制、执行测试脚本,分析测试结果”实验中,教师应有针对性地加强对学生的指导。这是学生使用QTP所做的第一个实验,实验过程中会遇到各种各样的问题,举例如下:

1) 录制脚本完成后,执行不能成功。这个问题的出现,大多原因是学生在录制脚本的过程中频繁切换应用程序窗口,进行了与测试无关的应用程序操作,这些操作都录制到了脚本中,但在执行脚本时QTP无法找到这些无关应用程序的对象,导致脚本执行失败。该问题也属于共性问题,教师在讲解时应提醒学生在录制脚本时的注意事项。

2) 脚本执行完成后,不会分析实验结果。在教学参考资料中,可以引导学生去分析脚本执行结果。教师可以在课上统一讲解测试结果的分析方法。

第一个实验对整个自动化测试工具课程的学习是非常重要的,因此,授课教师一定要注意合理地引导学生,及时解决学生遇到的问题。当然,在学生遇到问题时,最好先提醒学生试着自己去解决,培养他们独立分析和解决问题的能力[3-4]。

所有实验在完成后要求学生提交实验报告。实验报告是考查学生完成实验的重要参考,完整的实验报告将体现学生在实验过程中的思考过程。

在完成QTP和LoadRunner的学习后,我们通过一个实际Web项目案例“网上书店”进行完整的功能及性能测试。学生经历项目测试计划、测试设计、测试执行、结果分析、测试报告的完整测试流程,完成对该项目的性能和功能测试工作。对于最后大项目的测试工作,很显然不能由一个人完成,教学过程中采用分组方式是比较合理的。将平时实验中表现比较突出的同学,分配在各小组中担任组长,每小组5~6人。由组长分配任务,督促团队按时提交相关文档。从教学实践来看,这种方式取得的效果非常好,能够充分调动同学们的积极性,增强学生的团队合作意识[4-5]。

4考核方式

对于实践性强的课程,考核方式以实验成绩为主[3]。按照教学计划中的实验设置,对每一个实验在课堂上进行检查,针对实验内容对学生提问,要求学生对所做实验用到的技术内容以及测试结果进行分析。根据学生的表述情况打分,单个实验的成绩还需要参考实验报告,根据实验报告的质量打分。对大项目的测试评定,依据小组的综合表现、项目测试相关文档质量打分,考核的总体标准如表2所示。这种考核方式,更加注重学生平时的课堂表现,脱离了传统的期末考试给学生带来的恐惧心理,使学生在平时课堂上能够积极做实验,取得更好的教学效果。

从最终考核成绩来看,大部分学生基本掌握了QTP及LoadRunner的使用以及其中涉及的关键技术,能够做到灵活运用,提高测试效率,为将来的求职打下了坚实的基础。

5结语

根据国内某专业网站的最新调查显示[1,6],软件测试正逐渐成为IT行业的主导,人才需求越来越旺盛。这将促使我国高等院校在软件测试人才培养方面加快步伐,通过制定专门的测试人才培养计划来培养急需的测试人才。希望我们的教学实践可为即将开设自动化测试工具类似课程的兄弟院校提供经验支持。

参考文献:

[1] 51testing. 2008年中国软件测试从业人员调查报告[EB/OL]. [2011-05-01]. /ddimg/ uploadsoft/20090622/08cydcl.pdf,2009.6.

[2] 钟素芬,叶明芷. 软件测试应用性人才培养模式的探索与实践[J]. 北京联合大学学报:自然科学版,2007,21(3):89-92.

[3] 李绘卓,唐峻,范勇. 基于案例的软件测试实验教学[J]. 电脑知识与技术,2009,5(27):7820-7821.

[4] 屠红蕾. 软件测试教学的点滴体会[J]. 计算机教育,2008(10):124-125.

[5] 程宝雷. 基于Rational的软件测试课程实验教学方法探讨[J]. 实验室研究与探索,2007,26(12):310-312.

[6] 51testing. 2009年中国软件测试从业人员调查报告[EB/OL]. [2011-05-01]. /ddimg/ uploadsoft/20100611/09cydc.pdf.

Teaching Scheme of Automatic Testing Tools

WANG Fasheng, ZHENG Dongxia, SHAO Ruifeng, XIONG Yaohua, GUO Quan

(Department of Computer Science & Technology, Dalian Neusoft Institute of Information, Dalian 116023, China)

Abstract: In this paper, we systematically propose the organization of the course: Automatic Testing Tools, in according to the aim of cultivating Software Testing engineers in applied undergraduate colleges and the authors’ teaching practice. We discuss in detail the content arrangement, teaching methods and class organizational form, as well as methods of assessment and other aspects. We also propose group-based web project testing practice which can fully mobilize students’ enthusiasm, and improve the students’ practical ability. And it can also lay a solid foundation for the student employment in future. At the same time, all our work can provide t practical experience for other colleges.

Key words: Software Testing; automatic testing tools; practice teaching; group based teaching

上一篇:基于插件的编译原理课程实验设计 下一篇:面向艺工融合的计算机基础课程体系定位与构建