admin 管理员组

文章数量: 887021


2024年3月1日发(作者:mysql和oracle哪个性能更好)

“软件测试”教学改革的探索和实践

摘要:传统的软件测试教学模式很难将知识传授给学生,教学方法和手段已不能适应时代发展的需要,本文介绍了我系在软件测试课程的教学过程中引入案例教学以及项目驱动等教学措施,取得了一定的教学效果。

关键词:软件测试;案例教学;项目驱动

近几年专业性的软件测试机构和组织迅速发展,随之带来了专业软件测试人才的旺盛需求,软件测试人才的培养正成为新的热点。然而,软件测试课程的理论与实践脱节,现有许多软件工程教材中关于软件测试的章节只介绍软件测试的理论方法,即使有案例也只是简单说明,并没有介绍软件测试的具体方法和实现过程,这导致学生只会死记硬背软件测试的条条框框而不懂如何活学活用。为此,我们尝试进行改革,引入了新的教学思路和措施。

1案例教学

案例教学法比传统的以教师为主导的教学法,更有利于提高学生分析问题和解决问题的能力,促进学生学会学习以及沟通合作。我们在教学的过程中,以可操作的软件测试案例为中心,让学生能在教学中体会实际的测试过程。

首先,一个好的测试案例所包含的内容必须完整,应包含测试目的、特殊的硬件要求、特殊的软件要求、特定的配置、执行测试的描述、测试的预期结果或成功条件。

其次,根据测试的分类不同,可分为以下几种:

 对于单元测试案例,主要按照程序内部的结构测试程序,检验程序中的每条通路是否都能按预定要求正确工作。这类测试案例主要验证模块接口、模块局部数据结构、模块边界条件、模块中所有独立执行通路、模块的各条错误处理通路。掌握白盒测试/黑盒测试方法以及单元测试的用例设计;通用代码编程规范、伪码写作规范的检查;基本的代码静态检查方法与工具运用;代码覆盖率检查方法与工具运用;OO程序单元测试方法与过程;针对内存泄漏的检查;掌握测试覆盖分析方法和测试用例最小化的运用。

 对于功能测试案例,用于鉴定执行后启用的功能。这类测试案例验证软件是否提供了基本的单

元功能、是否提供集成后的功能,以及是否提供解决方案设计中指定的其他功能。

 对于Web测试案例,Web系统是当前网络环境下最多的应用系统,其主要内容设计为Web性能测试项目解析、性能测试流程、测试规划与设计、性能测试需求分析、用户事务分析、Web资源分析、网页元素细化等。

 对于集成测试案例,主要包括针对结构化软件和面向对象软件的集成测试,独立开展集成测试用例设计和用例执行。具体分为基于结构化程序的集成测试方法和基于UML图的面向对象的集成测试方法。

 对于系统测试案例,掌握常见系统测试类型的基本测试方法,独立设计系统测试用例,运用手工方式或测试工具完成系统测试,包括功能测试、性能测试、压力(负载)测试、配置测试、易用性测试。

再次,教学案例的具体应用。我们根据难以程度,将测试案例大致可分为简单的基础性实验案例和综合实验。简单的基础性实验案例主要包括白盒测试和黑盒测试,通过学习让学生掌握软件测试最基本的一些方法。综合性的实验案例,特别是较大型的软件项目测试实验,让学生在实验的每一个步骤中理解软件测试技术和各种具体的测试方法,增强实际操作能力,增加软件项目测试的综合经验。

通过综合性实验的学习,可以让学生感受大型软件测试项目的工作流程和实施细节,掌握各种软件测试方法在大型项目中的应用,体会软件测试的规律;了解软件测试项目的管理,熟悉软件测试项目中人员的管理、产品的管理、软件测试案例的管理以及缺陷的管理;能够进行比较复杂的白盒测试或自动化测试,为从事要求较高的软件测试打下很好的基础。

2项目驱动

软件测试是一项技术性较强的工作,规范的实施也是以工程的方式开展或进行。因此,最好的课程内容及教学设计是通过项目的活动及过程来呈现问题,运用相关理论知识解析问题,以及通过工程过程解决问题,通过项目阐明技术方法与策略的运用。

项目的复杂性通过分解得到局部的单一性和简单化。项目包含了由易到难,由简单到复杂,由单一到综合,逐步实现的内容和过程。软件测试本身就是理论与实践紧密结合的一门技术学科或工程体现,贯彻项目教学法是该课程理论教学与实践教学“一体化”的最好形式。通过项目教学,可落实教学的循序渐进原则、

系统化原则、目标性原则、整体优化原则以及规范化原则。项目教学使教学内容的构建紧密围绕课程总体目标展开,项目组成具有针对性强,目标具体明确、步骤清晰的特点。它按照组成技能教学内容及相互间的内在联系,使各部分内容有所侧重,互相衔接,

软件测试项目大致可以分为以下三个方面:“软件测试技术”等课程的实践教学,强调案例教学法,强调实践教学;课外实践,强调综合性、设计性实验,由学生在课余时间完成,包括毕业设计;企业实习,和多个企业建立关系,供学生实习软件测试。

3常用自动化测试工具使用

在理解软件测试自动化原理基础上,掌握业界常用的

Rational、WinRunner、LoadRunner、Junit、Panorama等系列测试组件的运用。在制定的测试策略中应用测试自动化工具开发、编辑、运行和调试自动测试脚本程序,建立测试过程、生成测试报告,分析测试结果,理解测试工具如何进行对测试数据进行自动评估分析,掌握测试工具如何对测试文档生成和利用。如表1。

4结束语

我们对软件测试的教改受到了学生和老师的普遍欢迎。通过调查,大多数学生认为使他们对课本知识的理解更加深入了,主动思考问题的能力也得到了提

高。教师们也普遍反映“软件测试”的教学质量和教学效果得到极大的提高。

参考文献

[1] 钟元生. 软件测试实践教学特色的构建实践[J]. 电化教育研究,2006,162(10):62-65.

[2] 张小进,陈雄峰. 软件工程课程改革探索—软件测试在程序设计课程中的引入[J]. 高等理科教育,2006,70(6):91-94.

[3] 贺平. 软件测试课程开发[J]. 计算机教育,2006,(12):53-56.

[4] 梁春媚. 建构主义教学理念在中职计算机教学中的运用[J]. 职业教育研究,2004,(12):60-61.

[5] 张继学. 案例教学及其在国内的发展现状[J]. 职业教育研究,2004,(11):60-61.


本文标签: 测试 软件测试 教学