以实践能力为目标的“软件测试”课程教学

2020-08-13 06:54张艳杨丽娟车冬娟
科技创新导报 2020年16期
关键词:自动化测试软件测试案例教学

张艳 杨丽娟 车冬娟

摘   要:针对软件测试课程教学过程中存在的问题,结合当前社会对软件测试人才的需求内容,分析提出高校软件测试课程的教学方法和对策。本文主要以实践能力为目标,制定新的教学计划,采用案例教学,建立实验教学体系,采用笔试与机试相结合的考核方式进行教学改革,培养即有扎实理论知识,又具备较强实践能力的高校人才。

关键词:实践能力  软件测试  案例教学  自动化测试

中图分类号:G642                                  文献标识码:A                        文章编号:1674-098X(2020)06(a)-0203-03

Abstract:In view of the problems existing in the teaching process of software testing course, combined with the current social demand for software testing talents, this paper analyzes and puts forward the teaching methods and countermeasures of software testing course. In order to training college talents with solid theoretical knowledge and strong practical ability, we take practical ability as the goal, new teaching plan is formulated, case teaching is adopted, experimental teaching system is established, and combining written test and computer test is carried out in teaching reform.

Key Words:Practical ability; Software testing; Case teaching; Automated testing

1  引言

人類社会已经进入信息时代,软件如电脑软件和手机软件已经走入人们的生活。如何保证软件质量,这需要前期的软件测试。可以说,软件测试是保证软件良好运行的重要手段。

软件测试是软件工程专业的主干课程,具有实践性强的特点[1]。据调查,由于国内软件产业规模越来越大,中国软件测试人才极度缺乏。目前从事软件测试的人群中,发现“计算机专业应届毕业生缺乏动手能力”,学习完后,终觉纸上谈兵。如何培养既掌握理论及流程,又有实践能力的软件测试人才是高校软件测试课程面临的要解决的问题。课堂中的案例教学和实验体系的搭建是进行软件测试教学改革的关键[2],本文借鉴前人经验,主要探讨以实践能力为培养目标的软件测试教学思路。

2  软件测试课程的特点

(1)理论知识多,看似简单却不容易掌握,如白盒测试一章中,逻辑覆盖法分为语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、修正的判定/条件覆盖、条件组合覆盖、路径覆盖,这些方法看似简单,但要分清楚各方法之间的区别和联系实则困难。

(2)实验课不成体系,实验众多,阶段性强[3]。

(3)自动化测试工具众多。如从测试计划到测试结果分析,不同测试阶段都涉及到众多知识点,有不同的自动化测试工具;从测试角度上又分为功能测试、性能测试等。并且,同一类型的测试工具也有几种,如性能测试工具有LoadRunner、Jmeter、Rational Robot等。

针对软件测试课程的特点,目前课程教学主要有以下问题:

(1)按照新的教学培养方案的要求,学生接受的教学总课时数不断减少。软件工程课程面临着理论课时和实践课时严重不足的现象,这样难以达到教学的深度和难度。

(2)由于理论知识多且难度相对不高。学生在学习理论知识时容易提不起兴趣,一部分理论知识在进行实验时,由于难度不高,且相对单调,学生失去兴趣。另一方面,实验课程阶段性强,且相对分散,不成体系。

(3)由于自动化测试软件种类较多,且有些软件属于商业软件,如何选择合适的测试软件既能满足学生的学习需要,又能使适应社会的需求是一项比较有挑战性的问题。

(4)传统的考核机制基本上是笔试,不能体现学生的动手实践能力。

3  软件测试课程的解决方法

(1)针对限定的课时量,制定新的教学计划,构建全面的知识体系,如图1所示,软件测试的主要内容分为理论性教学和实践性教学。理论教学主要是讲授软件测试相关的基本的概述、原理、定义及原则等,如软件测试基本概述、软件测试原则、分类、测试流程、测试模型、测试用例;白盒及黑盒测试的主要方法及实现步骤;阶段性测试的主要实现流程等。实践性教学主要是在理论教学的基础上对自动化测试工具的学习和使用。

培养有实践能力的应用型人才不仅要掌握理论知识,更重要的是将理论知识应用于实践,制定新的教学计划是在一定的课时量的基础上,加大体现动手能力的实验课课时量,并且在理论教学是时着重为学生演示在理论知识背景下的转换结果。体现这门课的应用价值,提高学生的学习兴趣。

(2)进行案例教学,以案例穿插于教学全过程,让学生看到这门课程的实用价值。选取案例要有代表性,以两位整数加法计算器为例。要求:输入的参数值必须大于等于-100同时小于100等于的整数。此案例可以作为黑盒测试中等价类划分法的典型案例。界面如图2所示。

由于学生已经有了编程基础,可以让部分学生实现此案例,另一部分同学进行黑盒测试,最后将测试结果进行反馈。白盒测试部分以图2为例运用逻辑覆盖法和基本路径测试等方法进行代码的测试。同样此例也可以运用在自动化工具测试部分。在进行案例教学过程中要针对学生课程基础,对选择的案例进行难易程度分类,如在掌握图2案例的基础上增加判断闰年或者三角形的案例。

(3)自动化测试工具不仅仅局限于自带的案例,要倾向于有实际意义的案例。建立校企结合。依托软件企业,学生参加企业实际测试项目,既能够为企业解决测试人员欠缺的问题,更重要的是能够使学生得到实际的锻炼。

(4)除了课上进行案例教学外,实验课将教学内容建立进行进一步的巩固和扩充,实验内容与课堂教授内容相一致,建立完善的实验教学体系。主要的实验内容如表1所示。实验任务均要求限时提交,根据我校实际情况,我们以线上超星学习通为载体进行实验任務的收交工作,教师对学生提交内容及时修改反馈给学生。对于实验环节比较难的部分我们提前录屏发放到学习通资料库中,以便学生反复观看学习。

(5)考核方式为笔试和机试,但更倾向于上机考试。考试形式和内容是学生的动力和主要目标之一,考试内容主要以课堂教学的基本理论和实验教学内容为主线,考察学生对所学知识的灵活运用能力。以北华航天工业学院为例,我校近几年期末考试采用笔试和机试相结合的方式,笔试主要考察学生基本理论知识的掌握能力,机试主要考察自动化测试软件的运用能力。

4  结语

软件测试是贯穿于软件生命周期的一项任务,是软件工程专业必修的一门专业课,但重编码轻测试的思想及传统的教学方式导致学生不能重视这门课程,本文以实践能力为目标,制定新的教学计划,采用案例教学,建立实验教学体系,采用笔试与机试相结合的考核方式。实践证明,本文教学方式更能提高学生对软件测试课程的兴趣和积极性,使学生认识到软件测试的重要性,增强了软件工程专业就业的竞争力。

参考文献

[1] 吉雪芸,谭火彬,蔡为东.能力导向的软件测试课程研究[J].计算机教育,2019(5):94-96.

[2] 苏晶,张冬梅,孙守卿.案例驱动法在《软件测试》实践教学中的研究与应用[J].科技创新导报,2018(22):185-186.

[3] 辜萍萍.软件测试课程实验教学体系设计与实践[J].实验室研究与探索, 2019(7):180-184.

猜你喜欢
自动化测试软件测试案例教学
基于OBE的软件测试课程教学改革探索
EXCEL和VBA实现软件测试记录管理
关于软件测试技术应用与发展趋势研究
浅谈空调控制器自动化测试
案例教学在机械创新设计课程中的应用
马克思主义基本原理概论课案例教学的几点思考
软件测试工程化模型及应用研究