软件测试技术综合性设计实验
2014-08-30田安红李敬丽许秋丽
敖 丽 田安红 李敬丽 许秋丽
(曲靖师范学院 计算机科学与工程学院,云南 曲靖655011)
随着软件行业的飞速发展, 国内外出现很多新鲜的软件企业,增加了大学生的就业机遇,然而软件的规模在日益扩大,它的复杂性也在逐渐增强,如果软件出现缺陷,修复的代价就很大。软件测试是保证软件产品质量的最有效的方法[1],然而在国内软件行业对软件测试的认识普遍较晚,并且存在一种现象“重开发、轻测试”[2],导致中国软件行业发展的怠慢。 很过高校也多都先后开设了软件测试的课程,但很多老师都不具备实际的软件测试经验,本文研究开展基于软件测试的综合性设计实验,探讨提高教学效果。
1 课程性质
《软件测试技术》是计算机科学与工程学院中软件工程专业的一门重要的专业必修课,是为我国软件产业培养急需的软件质量保证和测试专业人才服务。 该门课程在很多高校重视理论教学,轻视实践教学[3],以及课时太少,无法掌握软件测试的核心内容。
开发《软件测试技术》综合性实验对学生意义重大,通过本课程的学习,使学生能掌握软件测试技术和基本操作技能,进一步加深对所学基本理论的理解, 对实验所用的测试工具能够正确和熟练地使用,并能撰写规范的测试文档,达到能够根据软件需要进行软件的测试设计、实施和管理的目标。
2 综合性实验方案
综合性实验主要是使学生掌握黑盒测试技术, 白盒测试技术;了解单元测试,集成测试,系统测试的方法;掌握测试用例的撰写与管理; 熟悉自动化功能测试工具QTP 和性能测试工具LoadRunner 的基本使用方法,具备软件测试人员的工程应用能力。 本实验要做以下工作:
第一,确定测试系统。 测试工程实践需要着重解决的问题是项目的设计,既要考虑满足教学的条件与要求,又要实现与实际测试工作的对接,并体现测试过程的特征。对于测试工程实践,根据软件企业测试工作实际,选择基于网络的应用系统软件,该项目的测试环境易于搭建,测试项目比较容易从企业或实际中获得,教学活动也比较容易组织和实施,测试实践的内容也比较丰富,自动化测试工具的运用较多,操作过程与结果分析也易见,以实际测试工程项目作为进行实训的载体,通过项目的协同完成,培养职业综合能力。
第二,测试过程。在学生有一定软件测试理论知识的基础后,布置实验要求,学生按实验需求,设计测试计划与策略,撰写测试用例,逐项展开黑盒测试、白盒测试、自动化功能与性能测试。
第三,学生分组。 把全班学生按5-6 人进行分组,并选定一名组长。
第四,分配任务。每个小组根据成员能力水平和任务难度,给每个成员分配一定的任务,并按测试计划完成相应的实验任务要求。
3 项目实施方法
本实验可以考虑以下方法:
第一,案例教学。教师针对重要的测试技术,有针对性地设计了教学案例,并注重案例的趣味性、实用性和易学习性,使学生可以轻松地将测试理论运用到生产实践中。
第二,项目驱动。在软件测试课程最后,可以通过一个综合案例的运用,让学生掌握所学的知识。如采取web 网站系统的测试为例。教师可以模拟企业实际开发的场景, 把班级的同学分为几个不同角色,如开发人员、需求分析人员、测试用例编程人员、黑盒测试人员、白盒测试人员、用例管理人员、自动化功能测试人员、自动化性能测试人员等。 让学生熟悉企业在实际项目中的开发流程,增强学生的兴趣与动力。
首先,教师把web 系统的测试功能给同学们讲解清楚,并提供相应的规格需求说明书,然后,学生按照老师的要求,自个进行自己的工作,最后,提交测试报告。 通过这样的一个环节,能够让学生综合所学的知识,如测试用例的设计,需要考虑黑盒测试和白盒测试,不同测试方法的重点不同,可以从功能入手,也可以从界面和性能入手,此时就可以锻炼学生自主分析的能力。 综合实践环节的最后,还需同学们提交测试缺陷报告,这次过程中,需要把各个同学的测试内容整合起来,存在相互合作沟通的问题。 通过一个实际完整的测试方案项目的执行,学生更容易掌握所学知识,为今后工作奠定了基础。
4 结论
软件测试课程是软件工程专业的核心重要课程,通过开展综合性设计实验,学生的实践能力得到了明显地提高。
[1]程静,孙占锋.软件人才创新教育培养模式的研究与实践[J].教育与职业,2009(29):111-112.
[2]兰景英,范勇.基于项目驱动的软件测试人才培养模式[J].计算机教育,2011,6:32-35.
[3]王帅,朱彬,李丽萍.软件测试课程建设的几点措施[J].计算机教育,2011,16:66-68.