测试基本理论知识范例6篇

测试基本理论知识

测试基本理论知识范文1

论文关键词:软件测试,知识管理模型,知识地图

论文摘要:在软件测试组织中,对测试过程中的知识进行有效的管理,是提升组织整体测试水平的关键。一个重要的研究问题是怎样将知识管理过程与软件测试过程有效集成,从而促进知识资产在软件测试组织中的传播与重用。给出了软件测试领域知识管理子系统的体系结构、主要功能以及使用流程,对一些关键技术进行了探讨。最后,给出了知识地图模块的设计与实现,验证了本文所实现的软件测试领域知识管理系统的合理性和有效性。

知识管理的本质是一个管理问题,但是知识管理的各种功能及服务最终都还得依靠知识管理技术来实现。可以说,没有强大的知识管理技术支持,企业将很难有效实施知识管理,它是构建知识管理系统的基础,也是实现知识管理的强大推动力。从广义的角度看,知识管理技术并不局限于IT技术,但现代信息技术才是知识管理得以有效实现的基本前提。十多年的知识管理研究使得相当一部分的知识管理IT工具已经推向商业市场,但是这些已有的产品并不都是和企业的具体需求结合在一起,特别是在特定领域的应用,这种脱节表现尤为突出。

软件测试是一个知识密集型的活动,测试人员都属于知识工作者,他们的工作不仅仅是依据测试计划对软件进行测试,与测试相关的知识、技巧、经验和灵感在测试过程中有着重要的作用,测试人员如果没有开阔的思路,没有丰富的测试经验与测试技巧,测试的质量将无法保证。此外技术的飞速发展,不断出现的新的待测软件产品,常使软件测试人员感到压力重重,力不从心,他们有探寻新的测试知识和技术的紧迫需求。而知识管理的出现为我们提供了一种新思路和解决问题的新方法,但是软件测试有其自身的特点,虽然现有的通用知识管理理论及技术已或多或少触及了某些问题,但我们更需要用一种与本领域结合更紧密的理论和技术,来重新思考和审视我们的问题,以便寻找出一种解决问题的更有效的方法。

本系统是目前北航软件所的一个软件测试管理平台QESuite2.0项目中的一个子系统,该项目是北航软件所承担的某型号任务的一个子课题。目前,该系统已经完成了原型系统的构建,全部模块及功能已经实现,并在实际工作中试用,达到了预期的效果。

1软件测试领域的知识管理

1.1国内外研究现状

目前国内外在软件测试领域内实施知识管理的相关研究很少,迄今为止并没有找到在软件测试中实施知识管理的实例。国内知识管理的研究起步晚,同时专门从事软件测试的企业又很少,在测试领域内实施知识管理的需求刚刚出现。

到目前为止,虽然没有发现国外针对软件测试领域实施知识管理的研究和案例,但是从事各领域通用的知识管理的研究已有了很多年的历史,像IBM,Microsoft这样居于软件行业领先地位的公司,已经投入了相当规模的资金与人力来进行知识管理的研究,提出了一整套的知识管理理论并开发出相应的软件产品。

此外,国外在与软件测试最相近的软件工程领域对知识管理也有比较深入的相关研究,已经发表了相当数量的论文并开发出了一系列的软件支持工具。目前,每年都举行专门的基于知识的软件工程年会(KBSE Knowledge-BasedSoftware Engineering Conference),探讨知识管理在软件工程领域的最新进展。

进行软件测试领域知识管理的研究实际上是一个知识管理思想在软件测试领域的IT实现问题,也就是开发出一个软件平台来支持软件测试中的知识管理活动。根据Gallupe在2000年对现有知识管理系统平台、理论、案例等相关信息的较大范围的研究,现有知识管理系平台要真正实现有效的知识获取、编码、存储和搜索还有相当长的一段路要走。

1.2存在的主要问题

根据作者在北航软件所参与的软件测试项目工作经验,同时结合知识管理的基本原理分析国际上主流软件测试过程,认为目前在软件测试过程中存在五大问题:

1)软件测试知识重用率低。目前,软件测试过程中公共测试知识的积累未能有意识地大规模开展,虽然企业内部有一些用于测试知识和经验积累的数据库,但大多数员工忽视其存在,造成测试知识资源的闲置,导致测试知识和经验的重用率低。

2)软件测试知识传递不畅。现有测试知识的保管模式使得知识的传递不畅,测试知识被动地等人来阅读,而使用者则在知识海洋中苦苦寻觅他所需要的知识,员工无法快速掌握新的测试知识。

3)软件测试知识共享环境差。企业内部尚没有正式的、专用的、有组织的知识共享场所,员工之间缺乏相互沟通与交流的机会,沟通与交流的体制也没有建立起来,软件测试过程中的知识共享氛围也有待于培养形成。

4)软件测试知识流失严重。许多专门经验和技能只是少数人所拥有,没有真正成为企业的公共知识,这不仅使测试知识传递不畅,而且在人员变动时,这些测试知识会随之流失,使企业的整体竞争力因人员流动而发生波动,给企业带来严重损失。

5)无法快速实现测试组织中人力资源优化配置。知识管理是人、过程、技术的有机集成,其中人是最主要的,企业的管理者无法对组织中的人员技术特长、知识分布了如指掌,在遇到新的测试项目时,无法根据员工特长,快速搭建出最优的项目团队,从而无法实现组织中人力资源的优化配置。

由于上述问题的存在,造成了软件测试企业的生产效率不高,对市场的整体响应速度慢,应变能力不强。本人认为以上问题的出现是源于在当前的软件测试过程中缺乏对知识的科学管理,因此在该领域内实施知识管理就显得很有必要。

2系统体系结构及工作流程

北航软件所(SEI/BUAA)在多年从事软件测试领域的研究与实践的基础上,对知识管理在测试领域中的应用进行了大量深入的调查、研究,提出了一套针对软件测试领域实施知识管理的思想和方法。

由于软件测试领域的知识管理目前的研究甚少,特别是现成的软件测试知识管理系统更是一片空白,因此本课题的研究只能参照通用的或相关领域的已有研究进行。观察国内外知识管理平台的研究,尽管提出的模式纷繁复杂,但基本上每个模式中都包含着诸如知识产生、分类、积累、共享、重用这样的基本流程。

2.1系统体系结构

QESuite2.0在结构上采用的c/s方式,可支持群组协同工作,其中数据收集和分发的部分使用EJB实现,容器使用JBoss。QESuite2.0的框架基于插件开发的思想创建,利用多态特性声明可扩展的接口。框架与插件的连接、子类别的实例化过程则利用解释引擎(也称作连接器)在运行时动态完成,框架即可根据模板进行统一调用,具有良好的封装性和可扩展性。基于测试管理平台的以上特点,软件测试过程知识管理系统的体系结构如图1所示。

本系统基于J2EE开放式架构,是一个面向软件测试过程的架构弹性的知识管理平台。系统依循知识生命周期管理,利用软件测试组织中的知识文档,有效帮助企业存储、管理、搜寻、分享各种知识,并通过组织中的知识地图,有效地评估员工的知识程度,使知识地图成为知识型员工的地位象征,并通过统计工具对拥有知识的员工进行肯定,从而促进知识共享的企业文化。

2.2系统工作流程

系统的工作流程主要包括以下几个方面,如图2所示。

(1)首先对本子系统进行初始化,在本系统预定义的基础上,允许用户对软件测试知识分类、知识程度、组织职位定义、项目规模进行自定义。

(2)在交流库中添加文档,用户可以直接编写文档提交交流库,或者在交流库中提出问题,交流库是整个系统的知识文档来源。交流库中筛选出的技术含量较高文档,由知识分析员进行知识分类后,提交知识库。

(3)用户可以自行对知识库中的知识文档进行评估,同时根据知识分析员对文档的评定,以及作者的知识程度、文档的链接程度等加权实现对文档的评定。

(4)知识分析员可以根据组织讨论的结果直接设定组织成员的知识等级,也可以通过编辑组织成员的项目经历,来自动设置成员的知识等级,或者通过成员在组织中发表的知识文档来自动设置成员的知识等级。

(5)知识检索,主要包括知识文档检索和专家检索,通过知识文档元数据可以任意检索知识文档,当用户无法找到需要的知识文档,可以通过专家检索来告诉用户组织中能够解决问题的人。

3几个关键技术的研究与应用

3.1基于本体的软件测试领域知识表示方法

本体(ontology)起源于哲学,是关于存在及其本质和规律的学说。在近一二十年,本体被计算机及建模领域所采用,用于知识表示、知识共享和重用。本体论是对概念化对象的明确表示和描述,是对客观世界存在的现实系统化的描述。从本质上讲,本体是一个或几个领域的概念以及反映这些概念的关系的集合,关系反映了概念的约束和联系,而关系本身也是概念,关系之间也可能构成新的关系。

我们以本体来对软件测试领域知识进行表示,描述领域中相关的概念、属性,及其关系。这些本体概念、概念之间的关系定义在文档、参考文献、项目、人员、知识程度共5类本体中。根据以上属性,软件测试领域知识本体如图3所示。

3.2软件测试领域知识管理模型的提出

在针对软件测试过程的知识管理中,需要实现积极、主动的知识传递,建立起组织级的人员之间沟通和交流的渠道,根据软件测试活动中的知识需求,及时地实现相关知识的传递,通过有效的知识传播来改善和提高知识的重用效果。由于组织所需要的知识处于动态变化中,因而需要通过一个有效的基础设施,来满足以上功能需求。

根据以上分析,我们提出了一个面向软件测试过程的知识管理模型,如图4所示。本模型的要素是“测试组织人员”、“测试组织知识资产”、“测试组织交流场所”。基本思想是在软件测试过程中,建立一个交流场所,记录成员的提出的问题和问题解决过程,以及各种文档。

3.3软件测试领域知识地图的构建方法

知识地图,或称知识分布图(又称作知识黄页簿)是知识的库存目录。知识地图所显示的知识来源,可能是部门名称、小组名称、专家名字、相关人名字、文件名称、参考书目、事件代号、专利号码、或知识库索引等,但却不包含知识的内容本身,它是指南和向导,用以节省员工追踪知识来源的时间。

一个优秀的软件测试知识管理平台软件还应当能够提供强大的软件测试知识分类的能力。根据工程实践经验及SWEBOK分类方法,我们对软件测试领域增加了5大知识域:开发语言、数据库、操作系统、软件测试工具、测试项目相关知识。我们的知识地图中,每一种能力都有5级知识程度:了解、熟悉、熟练、精通、专家级。每一级的程度定义都有描述,务求清晰及易于评价,并避免主观的误差。每个员工的实际能力也依此标准衡量,评估过程应由员工、小组、经理及知识分析员互动完成。

3.4基于本体的知识文档智能检索和排序方法

本体在知识检索子系统中主要扮演知识库的角色,即首先对软件测试领域的概念分类、建立概念之间关系约束的描述,然后以此为基础构建详细的软件测试领域知识库,主要包括软件测试领域的具体概念、概念之间的属性、概念之间的关系以及实例等知识。在知识检索时,根据用户请求的关键词来查找相应的概念或属性,并以此为出发点来检索某条本体信息是否与这些概念或属性相关,从而实现支持逻辑推理的智能检索。

在知识文档检索子系统检索出结果后,必须首先研究检索出来的文档应该按照什么样的顺序进行排列。影响排序的因素有很多,根据研究,我们认为有5类因素是影响排序结果的关键:用户对知识文档的评价、知识分析员对文档的评价、作者的知识程度、文档的链接数,以及文档的打开次数。这五类因素的权值是按次序递减的,可利用递减加权公式来计算各因素的权值。下面是递减加权公式:

知识文档的重要性按下公式来进行计算:

知识文档的重要性=P1×用户对知识文档的评价+P2×知识分析员对文档的评价+P3×作者的知识程度+P4×文档的链接数+P5×文档的打开次数。

通过计算出来的知识文档重要性结果,然后对所有文档按降序排列,就可以将最有价值的知识文档排在前列。

4系统实现

限于篇幅,整个系统各个模块的设计以及实现,这里不做详细介绍了。下面以简单图示的方式给出本系统的核心模块——知识地图模块的类设计和实现界面。知识地图模块分为两个部分:专家网络和搭建测试项目团队。普通用户在该模块可以编辑自己的项目经历,在编辑时可以选择项目导人数据,如果项目不存在,则可以自己编辑项目,然后导入项目数据,再编辑自己的项目经历,包括使用的技术、工作时间,项目职位、项目规模等等。知识分析员有权限选择其他用户编辑项目经历。在项目经历编辑完成之后,系统会根据用户对某些技术的使用时间来自行定义用户在这些知识点的知识程度,但是用户的知识程度最多达到熟练级别,要想达到精通和专家级,必须由知识分析员来编辑用户的知识程度。图5是系统中专家网络定义模块的编辑用户知识程度活动图。

知识地图模块的客户端的设计类图如图6所示。在知识地图模块的客户端中,负责界面消息事务处理的类有三个:EditTechDialog,WorkingExperienceDialog,FindPersonToStartProject。EditTechDialog这个类用来编辑用户的知识程度,只有知识分析员才有权限来调用这个类。WorkingExperi—enceDialog是普通用户可以使用的一个类,用来显示用户的工作经历。类FindPersonToStartProject是管理人员,通过输入一些数据来得到组织中比较适合新项目的人员,通过类FindResultDialog来显示查找结果。

结束语

测试基本理论知识范文2

关键词:软件测试;项目驱动;校企合作;课程改革

中图分类号:TP311

文献标识码:A

DOI: 10.3969/j.issn.1003-6970.2015.07.026

0 引言

随着软件规模和复杂性的大幅提升,如何保证软件质量的可靠性变得日益突出。而软件测试作为保证软件质量的关键技术之一,其在软件行业中的地位与日剧增,软件测试的理论和技术工具都在不断的更新。众所周知,软件质量的好坏直接影响着软件企业的发展进程,对软件质量的重视使得软件企业对软件测试人才的需求日益迫切,软件测试行业发展前景无限巨大。这也为众多计算机及相关专业的毕业生开拓了新的就业渠道,软件测试的教学工作显得越发的重要。基于上述背景,本文结合作者测试教学改革的实践,就该门课程的教学内容、教学方法等方面进行了一些探讨。

1 课程教学现状与面临的问题

当前,国内许多高校都没有单独开设《软件测试》这门课,只是把它作为《软件工程》课程的一个章节来讲,即使开设了该门课程的高校,大多因缺乏必要的测试实践经验及测试教学方法,教学效果往往不能达到预期的要求。因此如何帮助学生更好地掌握测试理论与测试技能,对我们的测试教学工作提出了新的挑战。目前,有关软件测试教学面临的问题主要有以下三个方面:

1.1 重开发,轻测试

目前,国内众多高校都或多或少存在着重开发,轻测试的思想,教学的主要精力都用在了对学生软件开发能力的培养,而忽略或轻视软件测试的教学需求,造成上述问题的主要原因有两个方面:一是,软件测试毕竟是新兴行业,目前国内重视的程度还不够,大部分软件企业招聘还是以软件开发岗为主,为了提高就业率,大部分学校只能侧重对学生编程能力的培养;二是,目前国内有关软件测试的教学素材还依然匮乏,好的测试教材不多,且软件测试实践环节需要的大量测试案例不足,教师自身缺乏实际的软件测试经验,从而造成很多教师都不愿意从事该门课程的教学工作,加之学生普遍认为测试没什么含金量,开发学不好才去学测试思想的流行,都给软件测试教学带来了极大的冲击。

1.2 课程内容设置不合理

目前,大部分软件测试教材对测试的讲解往往泛泛而谈,缺乏条理性,将测试技术、测试管理与测试工具混为一谈,学生很难把握测试的难重点,加之部分教材教学内容陈旧,不能紧跟测试最新技术前沿,学生学习兴趣度不高;测试课程内容普遍以理论讲解、概念介绍为主,缺少测试案例,淡化对学生实际测试能力的培养,学习的内容很难应用于实际的测试项目中。

1.3 教学手段和方法缺乏多样性

“PPT+板书”仍是测试教学的主要手段,教师注重满堂灌,学生只是被动的听,教学方法单一枯燥,学生课堂学习的积极性和学习效率大大折扣;而且教师在讲解测试基本原理时,往往就单一的测试知识点展开,忽略测试知识的完整性、渐进性,较少使用案例教学法,以项目驱动为主线展开知识,造成学生对测试原理理解不透彻,不能适应真正测试工作的具体要求。

2 课程教改思路

2.1 优化课程教学内容

软件测试教学重在对学生测试实践能力的培养,因此要合理分配好理论课程与实践课程的学时比例,尽量减少理论课程的教学学时,加大实践教学学时。理论课程的内容要做到“精而够用”,这就要求教师要着重梳理测试的基本理论、基本原理,挖掘出测试原理的精髓,摒弃不实用或对学生帮助不大的理论点,对测试理论讲解适度取舍。

笔者在实际的测试理论教学中,主要讲解测试的流程、黑盒测试、白盒测试、性能测试及面向对象测试等知识点,经实践证明,上述知识点能够做到“精而够用”。在实际的理论课程教学中,笔者不是单一的讲解每个测试原理,而是以项目驱动的方式展开,让学生在实际的测试项目中,循序渐进掌握测试的基本原理及方法。笔者选用在线招聘系统的客户端为测试项目,教学效果良好。对于测试工具的讲解则放在实践环节进行,提高了授课效率。

2.2 加强实践教学

软件测试重在实践,唯有重视实践,才能让学生真正掌握测试的基本方法,做到学以致用。为了达到对学生测试实践能力的培养,笔者精心设计了十次实验,这十个实验很好地涵盖了测试的基本流程及技术方法,具有一定的代表性。由于测试技术更新较快,在实验的设计中要充分考虑新技术、新平台的测试方案,如加入针对.net软件测试所需特殊性的测试技术实验、移动APP测试实验等,以培养学生适应未来测试工作的需要。

需要注意的是,仅通过单一的测试实验,学生还不能完全掌握测试的流程与技术,在有条件的情况下,还需通过综合性的测试案例来提高学生的测试水平,做到将各测试原理及测试方法融会贯通。笔者所在的学校现已进行了测试教学改革,增加了2个学分的测试课程设计,要求学生综合运用所学测试知识完成一个网站的测试实例,实践证明,学生学习积极性和测试水平都有很大地提高,

2.3 探索多样化测试人才培养方案

软件测试人才的培养与软件产业是无法割裂的一个整体。因此,培养符合社会要求的软件测试人才不单单是学校的任务,还应积极探索校企联合培养体系,把软件企业对学生的实际测试技能训练纳入到正常的培养方案中。尝试探索高校主要偏重对学生测试基本素质及基础理论知识的培养,而对学生测试职业素质及职业技能的培养则更多地置于真实的企业运行环境中去训练的人才培养体系。逐步建立高校与IT培训企业、IT企业的战略伙伴关系,鼓励教师与企业工程师的合作互动,打造共同奉献、共同获利的共赢平台。

学生在企业真正的测试环境中,通过真实案例的测试锻炼,不仅可以培养和训练协同工作、沟通交流、角色转换的意识,形成实际的工作能力,还可以使学生适应软件企业的工作环境和业界标准,并和国际先进的软件开发理念和测试技术保持同步。

有幸的是,笔者所在的院系现已积极走出了这一步。目前,我系与上海博为峰软件技术有限公司通力合作,共同培养软件测试人才,系部也引进了该公司的测试方案,相关教师也在积极培训中。

2.4 提高教师测试实践水平

“打铁还需自身硬”,为了适应培养应用型测试人才的需求,要求教师首先自身要提高测试实践水平,积累测试实践案例,逐步提高测试实践教学水平,而决不能照本宣科去教育学生。鼓励教师多下企业、及时了解测试学科前沿知识及掌握最新测试技术。在有条件的情况下,可以尝试教师与企业工程师的角色互换,相互交流,相互学习。

2.5 鼓励学生参与测试改革

在平时的学生培养中,应注重发掘动手能力强,有测试学习兴趣的学生,加大对这些学生的培养力度,可以适当调整教学内容和教学方法,鼓励学生勇于创新,勇于实践新技术,积极参与各类测试学术活动,提高自身竞争力。同时,注意引导学有余力的同学积极参与权威行业的认证与培训,考取相关测试职业资格证书。

测试基本理论知识范文3

中图分类号:G642

0 引 言

随着计算机软件在各行各业应用的不断普及与深入,软件开发行业已成为推动社会信息化转型的支柱产业。软件质量逐渐成为行业竞争的核心力量之一,保障软件质量的重要手段是软件测试,因此我国急需大量高素质的从事软件测试的专业人才。

目前,国内高校已将软件测试作为计算机专业的一门重要专业基础课程,面向广大研究生、本科生及专科生等不同层次的学生开设与软件测试相关的课程(如软件测试基础、软件测试方法与实践、实用软件测试技术等)。区别于软件工程课程,软件测试课程在高校的开设大多起步较晚,早期一般是作为软件工程课程的一部分内容合并讲解[1]。无论在课程理论教学内容安排还是学生实训环节组织上均存在着系统性、针对性、实用性方面的不足,课程讲授的知识点来自对原有软件工程知识体系的延伸,常常与软件企业的实际测试需求脱节。

教育的本质是传授知识、培养能力的过程。互联网技术的快速发展给传统的教育带来了变革的新机遇。2014年11月,李克强总理在出席首届世界互联网大会时指出,互联网是大众创业、万众创新的新工具[2]。在“互联网+”背景下,高校是发挥其创新优势的绝佳场所,利用信息通信技术及互联网平台,使互联网与传统教育深度融合,创造新的教育形态。

1 教学过程中存在的问题及改革思路

1.1 对存在问题的分析

通过调研国内多所高校软件测试课程的教学情况,结合南通大学近3年来的教学改革经历,我们发现国内的软件测试课程教学普遍存在以下3点问题。

(1)讲授的知识点分散、繁杂,缺乏系统性。在课程讲授过程中,有必要构建统一的知识框架。国内高校开设软件测试课程起步较晚,所讲授内容一般源于对软件工程课程中软件验证环节知识点的细化和扩充。这种方法尽管介绍了很多知识点,但由于这些知识点之间的联系普遍较松散,学生对这些知识的认识只是停留在“是什么”的层面。在软件测试课程的教学过程中,教师和学生缺乏一个简单明了的指导框架,只能分散地讲解各部分知识点。这种教学方式不利于学生系统地掌握软件测试的核心要点,也不利于学生将所学的软件测试知识建构为一个有机体系。

(2)教学内容与企业实际需求脱节。多数高校的教师经过本科、研究生、博士阶段的学习,毕业后直接到高校工作。这一现实的直接反映是,教师普遍缺乏在企业工作的背景,他们在授课时经常有意无意地侧重于理论讲授而弱化学生的实践训练[3]。在软件测试课程的教学上集中表现为两点:一是侧重讲授软件测试的基础理论、经典的软件测试技术及工具;二是在学生实训环节,侧重安排学生基于已有的代码案例开展测试训练,但这些案例被年复一年地使用,多数案例已与现阶段的企业实际软件项目大不相同,而且教学用的测试工具与企业正在使用的工具也存在很大的差别。

(3)课程教学组织模式需要改革。课程教学组织通常采用“课堂教学+机房实验+课后作业”线性模式。这种模式下的教学互动表现为课堂教学互动、实验教学互动、点评学生作业互动3个环节,但3个环节之间没有或很少有互动。众所周知,理工科课程的学习过程是一个持续、迭代训练的过程,需要师生全方位地开展教学互动、深入交流,以达到持续学习、螺旋式提升知识和能力的目标。现有的互联网技术为实现上述目标提供了便利,有必要将这些技术广泛应用于教学组织过程。

1.2 教学改革思路

在教学过程中强调学生“做中学”的基本原则,融合“互联网+”技术背景,组合运用课堂教学、专题讨论、上机实验、老师点评、助教推进、课后持续改进、项目小组竞赛以及个人和团队得分排位赛等多种教学方法。学生通过教师、助教、团队成员持续推动,迭代改进这种团队和个人的项目实践,能够深刻领会软件测试的方法、技术,同时提升个人技能和团队协作能力。

首先,筛选众多软件测试的相关知识,提炼软件测试课程的核心知识域,构建测试技术教学知识体系;其次,针对知识体系中对应的知识点,选择在企业中广泛使用的测试工具,并尽可能地从企业获取实际项目来构建测试教学的案例库;再次,构建课程综合实训平台,供学生巩固所学的测试方法和技术,并通过系统性训练掌握软件测试基本原理;最后,在促进教学效果方面,不断优化教学评价体系,探索教与学的持续改进方法。

此外,鼓励学生参与与软件开发测试相关的各种竞赛活动,搭建创新型大学计算机教学实践平台[4]。如参加全国大学生软件测试大赛,比赛内容有开发者测试大赛、移动应用测试大赛和嵌入式测试大赛。借助比赛建立软件产业和高等教育的资源对接,探索产教研融合的软件测试专业培养体系,进一步推进高校软件测试课程的专业建设。

2 课程教学知识域构建

2014年的《软件工程知识体系指南(SWEBOK V3.0)》搜集了33个国家近150位软件工程领域专家的意见,将软件工程研究内容划分为15个知识域[5],其中与软件测试紧密相关的知识域是软件测试和软件质量保证。它们从不同角度涵盖了与软件测试研究相关的海量知识,由于时间有限不可能完全纳入软件测试课程的教学。我们的教学改革以这两个知识域的内容为基础,考虑面向本科生的卓越工程师培养要求,筛选其中一部分内容构建教学知识域。

目前可以分为两步:第一步是建构软件测试的理论知识体系,目的是提炼软件测试理论教学知识域,注重各知识域之间的关联,力求知识域的系统性;第二步是测试工具习得案例库的构建,目的是基于已有的软件工具,开展一系列简单的项目实践,让学生掌握课堂讲授的理论知识点。

2.1 软件?y试教学知识体系

同济大学朱少民教授的“软件测试”思维导图,意图描绘软件测试技术的全景图,在学术界和工业界引起了广泛的讨论[6]。 这张“软件测试”思维导图包含9个模块,分别是测试定义、测试层次和类型、测试的流派、测试方法、测试方式、自动化测试、测试技术、测试过程、测试管理。虽然对模块内容的划分依据还存在一些争议,但是该思维导图覆盖了软件测试的理论、方法、技术和实践等诸多方面,9大模块之间也用连线表达模块间千丝万缕的联系。我们借鉴该思维导图覆盖的知识要点,结合卓越工程师培养的教学需要,融合理论、方法、实践3个维度,构建软件测试课程教学的知识体系,如图1所示。

图1展示了软件测试课程教学涉及的知识模块以及各模块之间的关联。如前所述,我们筛选了SWEBOK V3.0中对应的知识点作为各模块的教学内容。此外,结合普通本科院校(如南通大学)学生的实际情况,对各知识模块的学习要求适当调整,各模块对应的知识域见表1。

在课堂理论教学中讲述上述内容时,侧重阐述这些知识点的产生背景、基本原理、目标及相互联系等,在教学实践环节精心组织实践项目,强化所学知识要点。

2.2 测试工具习得案例设计

软件测试的目的是发现缺陷,人工测试与利用工具自动测试有各自的适用场景。一般而言,自动测试可以大幅度降低软件测试代价。目前有大量的测试工具可供教学使用。我们对照图1中的知识体系及表1中的知识点,选择一些有代表性的测试工具构造相应的案例组织学生实训学习,通过工具的学习掌握相应的知识点。现有的软件测试工具使用情况如下。

(1)在学习组合测试时,我们设计了软件安装过程的兼容性测试,设计了一组需要检测兼容性的环境要素(如网络、操作系统、CPU等),用微软的开源软件PICT求解不同组合。

(2)单元测试环节分两组开展教学。一组是从开源网站(Github、SIR等)下载一组Java源程序及与程序对应的Bug版本,练习使用Junit工具或利用集成在Eclipse上的开源插件EclEmma开展单元测试;第二组是从开源网站下载一组C++源程序及与程序对应的Bug版本,利用微软Visual Studio单元测试框架开展单元测试。在测试用例方面,可以直接使用SIR提供的测试用例,也可以应用所学的用例设计方法来构造测试用例。

(3)在性能测试教学环节,选择两组工具(JMeter工具、Visual Studio的性能分析工具),案例选择的是南通大学Email服务性能测试。

(4)代码覆盖测试利用的是集成在Eclipse上的开源插件EclEmma。实训案例与单元测试相同。

(5)移动应用测试应用慕测(mooctest.net)提供的移动应用测试工具(Kikbug),案例采用了来自工业企业的真实案例。

上述案例库构建策略的一个显著好处是:可以从开源网站下载或与企业合作的方式获得工业企业最新的软件开发项目,这使得学生不仅能掌握软件测试基础知识,而且能接触到工业企业最新的软件开发实践,增加学生身临其境的感觉,从而更直观地认识到在现阶段软件测试中需要解决的问题。

3 课程教学实训平台构建

尽管有丰富的测试工具可用于软件测试课程教学,但配置这些工具通常比较复杂,需要耗费师生及员工大量时间和精力。其表现在:①运行环境差异。不同测试工具对运行操作系统、网络配置、运行库等要求往往不同。②支持的编程语言差异。不同的测试工具可能支持不同的编程语言,有的支持Java语言,有的支持C++语言。③支持项目差异。不同的测试工具往往支持不同特征的项目测试,有些仅支持对传统软件项目的测试,有的支持对C/S 或B/S 架构的项目测试,还有的工具用于测试移动应用。

因此,很有必要构建一个用于软件测试课程教学的综合实训平台,将软件工具配置的工作对 师生透明化。如此,教师的工作重心可以集中于构建学生实训的题库,学生则集中精力考虑测试策略、测试用例设计,通过系统内嵌的测试工具验证测试策略和测试用例,进而掌握相应的理论知识点和提升实际动手能力。我们基于慕测科技提供的系统架构,构建软件测试课程教学实训平台[7],其结构如图2所示。

图2这种架构的好处是显而易见的。从开源网站、学术界及软件企业获取项目实践素材,经过筛选转换之后构建测试题库,这种方式保证了教学内容紧贴实际需求,并且在测试项目的构建上有很强的扩展性。学生通过网站提供的统一用户访问接口实现测试环境的构建,测试环境可以跟踪学生的软件使用、开发行为。系统实现了自动化评分、自动化提示、编程行为跟踪等网络服务。此外,系统还提供了微信和博客接口,可以实现基于互联网的课堂测试、课堂调研及课后作业,该功能已被广泛用于教学互动环节。

4 “互联网+”背景下的教学反馈与持续改进

4.1 教学评价体系构建

传统的教学反馈形式有课堂教学互动(提问及点评)、课后答疑、期中调研、期末测验等。其中,课堂教学互动效果好但特别耗时,使得课堂教学内容不够浓缩,并且这种收益是一次性的(下一轮教学仍需重复同样的动作)。教学中及时反馈十分重要,但课后答疑、期中调研、期末测验等形式很难保证实时性,从而降低了这类反馈的效果。

我们基于互联网技术优化教学评价体系,具体做法如下:①在课堂上以讲授理论知识为主,穿插讨论、翻转课堂等形式。此外,可以基于综合实训平台开展微信小测、微信投票等形式的教学活动。②基于教学实训平台组织实验教学。学生在提交实验结果后可以从自动评分模块得到本次实验得分。这在一定程度上降低了教师的工作量,学生还可以根据结果迭代改进。此外,在平台FAQ模块列出学生学习过程中可能会遇到的常见问题,教师和助教负责更新自己课程的FAQ。③实验报告、课后作业以博客的形式提交,教师和助教直接在博客中进行点评。采用内容订阅和推送服务(RSS、Email),方便教师在学生完成博客后收到RSS和Email通知。学生的博客被点评后也会收到RSS和Email通知,这在一定程度上提高了师生交互的效率。

4.2 持续改进

虽然我们基于互联网信息技术初步构建了较为高效的教学评价机制,但是整个系统的整合度还不是很高,教学反馈过程目前依赖于利用一些已有的工具,这些工具需要进一步与教学实训系统整合。目前,我们已完成微信与教学实训系统的整合,下一步需要整合QQ这种在学生中广泛使用的即时通信工具。我们的目标是实现微信、QQ、Email、RSS等互联网工具或服务与整个教学实训系统的融合,不断优化它们之间的接口,以提高师生交流的效率,从而方便学生和教师的使用。

测试基本理论知识范文4

关键词:航空宇航;测试技术;教学改革;研究生

中图分类号:G642.0 文献标识码:A 文章编号:1002-4107(2016)11-0001-04

测试技术课是工程类专业的主干专业基础课,对于学生的动手实践和试验探索能力培养具有非常重要的意义。该课程是一门综合性和实践性很强的课程,在教学过程中必须有效兼顾知识传授的广度和深度、试验探索的理论与实践两对矛盾[1]。通常在本科和研究生层次上都会开设相应的课程。

创新能力培养已成为研究生教育改革的基本问题,应将其贯穿于包括课程教学在内的研究生培养的各个环节[2]。研究生创新能力的培养不仅影响高等学校知识创新的水平, 也关系国家未来的整体创新能力[3]。近年来,随着航空宇航事业的迅猛发展和公众对航空宇航的认知提升,研究生学历已经成为从事航空宇航技术工作的基本条件,越来越多的学生跨专业进入航空宇航类专业的研究生行列。培养具有创新能力的航空宇航专业研究生对于提升我国航空宇航领域的技术实力和国际竞争力具有非常重要的意义。鉴于测试技术本身具有很强的实践性,因此有必要探索能激发研究生积极思维和主动参与、具有航空宇航特色的测试技术课程教学模式,使测试技术课程教学成为培养研究生创新和实践能力的重要环节。

关于本科阶段测试技术课的教学改革和实践,国内诸多学者进行了卓有成效的探索。针对机械工程与自动化及相关专业“测试技术”精品课程建设的需要,刘进志等从教学资源建设、师资队伍建设、教学内容革新、实践教学模式改革等方面进行了探索。王丰在“机械工程测试技术”课程体系优化、优质资源开发、教学技术改进、实验内容建设、工程素养和创新能力培养等方面进行了一系列改革与实践[4]。以培养学生综合应用能力为目标,李孟源等提出了强化测试技术实践教学的新思路,并在河南科技大学的教学过程中进行了实践[5]。贺德全对通信、电子信息、测控工程专业测试技术课“现代测试技术及应用”的教学改革进行了有益的探索,提出了课程改革的新思路[6]。王鹏等对应用电子技术、信息工程、测控技术与仪器等专业的测试技术课“自动测试系统”课程建设进行了探索,在教学队伍、教学内容、教学方法与教学手段、教材建设、教学管理和实践教学等方面开展了教学改革实践[7]。

不同于本科测试技术课程,研究生测试技术课更强调以创新和实践能力培养为核心的知识体系广度和试验探索实践。课程教学应充分借鉴国外顶尖高校的先进经验,强化前沿性、研讨性和实践性等教学环节,激发学生主动参与和积极思维的创新意识,为学生创新实践能力的培养提供充足的教学空间[8]。然而遗憾的是,如何对研究生测试技术课进行改革以适应创新实践能力的培养需求在国内还是空白,更遑论航空宇航这样具有鲜明专业特色的研究生测试技术课程的教学改革。

有鉴于此,本文以北京理工大学 “航空宇航测试与试验技术”课程为样本对航空宇航类专业研究生测试技术课程的教学改革进行了探索。在分析该课程的培养需求和教学目标基础上,本文提出了课程教学改革思路和详细的教学环节设置,总结了依托课程网站、科研课题和实验室设备进行课程教学改革的经验和实践效果,以期对国内高校航空宇航类专业及类似专业的研究生测试技术课教学改革有所启发。

一、培养需求分析

“航空宇航测试与试验技术”是北京理工大学宇航学院为航空宇航科学与技术专业开设的一门主干技术基础课,是学术型硕士研究生、全日制硕士专业学位研究生以及本科起点博士的专业必修课。课程课内计划学时为54学时,考核方式为平时考核与期末考试相结合的方式。其中,平时考核占70%,期末考试占30%。在测试技术、航天技术概论等课程学习的基础上,本课程旨在构建合理的课程知识体系,着力培养研究生在航空宇航领域的创新和实践能力,为培养肩负航空航天事业发展重任、理论与工程并重的高层次研究人才奠定必要的基础。

表1给出了近3年来课程的选课情况。需要说明的是:除表中明确列出的四个方向外,学术硕士生和本科起点博士生的研究方向还包括航空宇航制造及其自动化和振动与噪声控制两个方向,专业硕士生的研究方向还包括发射理论与技术、材料与结构力学和空气动力学三个方向。因人数较少,为简化需求分析,表中将这些方向统一归入其他项。从表1可以看出,本课程的选课研究生逐年阶梯式上升,课程的重要性和效果得到了研究生的广泛认可;选课研究生涵盖了北京理工大学航空宇航科学与技术专业的主要研究方向和三个不同层次的研究生。因此课程内容需要精心设计,以满足不同方向和不同层次研究生的学习需求。

与其他类型专业不同,航空宇航科学与技术是针对工程应用背景设置的专业。各研究方向的基础知识和应用领域涵盖很大的技术范畴,跨越机械、电子和信息等多个不同的领域,相应的测试需求也存在很大的差异。表2给出了主要研究方向的专业背景和测试需求。事实上,就本科层次而言,机械、电子信息、测控与仪器等不同专业类型的测试技术课程教学的侧重点和教学内容也存在很大的差别。本课程的教学目标需要充分考虑相关方向研究生在专业基础、应用背景和测试需求等方面的差异。

表2 主要研究方向专业背景及测试需求

鉴于航空宇航科学与技术专业具有专业涉及面宽、创新性强和测试需求明确等特点,本课程的教学目标定位在:(1)深化有关测试的基础知识和理论,介绍相关研究方向测试技术发展前沿,兼顾深度与广度、经典与现代两对矛盾,构建合理的课程知识体系,激发研究生的主动参与热情;(2)以测试系统设计和调试为手段,强化以知识应用为特征的实践能力培养;(3)以文献阅读和

探索研究为手段,通过体会和体验方式培养创新能力。

二、教学改革思路与措施

根据以上教学目标,本课程在北京理工大学精品课程建设项目的支持下,对“航空宇航测试与试验技术”课程的教学进行了改革,期望通过优化课程教学过程,适当压缩理论教学课堂授课内容,借助科研和实验室优势强化前沿性、研讨性和实践性教学环节,提升课程教学效果。

本课程的教学主要由理论教学、专题讨论、测试系统设计和自选试验四个环节组成。

根据教学计划,理论教学应着力于深化测试与试验的基础知识和理论以及介绍本专业测试的工程需求,主要包括测试基础理论及其应用和航空航天试验技术两个部分。具体内容为测试基础理论、数据采集与虚拟仪器技术、测试系统设计及评估、航空航天试验概述、航天测控系统、空间环境试验技术、飞行试验技术。其中,前三者主要着眼于深化测试与试验的基础知识和理论,后四者主要是帮助研究生了解其所在研究方向的测试需求。理论教学在实施过程中主要存在两个方面的问题。一方面,选修本课程的研究生的基础有较大的差异。在选修本课程的研究生中,部分是本校本专业的本科毕业生,选修过类似课程,对专业应用背景和测试需求已有一定的了解,但也有相当部分的研究生是跨专业的,对测试基础知识和理论了解较少,对专业应用背景和测试需求了解不多。另一方面,理论教学学时有限和不同方向的研究生兴趣差异也是需要考虑的问题。基于以上考虑,理论教学采用课堂讲授和课后自学相结合的方式进行。对理论性较强的、各研究方向有共同兴趣的内容采用课堂讲授;对其他内容,依托精品课程项目支持建设的课程网站开展教学,以自学为主,通过网上测验和答疑等方式帮助研究生检验和巩固学习效果。

专题讨论是兼具研讨性和前沿性特点的综合性重点教学环节,对构建研究生课程知识体系广度、提高创新意识以及体会创新过程具有重要的作用。根据研究生人数的不同,本环节占本课程的教学总学时的1/3―1/2。专题讨论要求研究生结合专业方向、课题组科研项目、参研课题或者个人感兴趣领域的测试需求进行调研,以近5年内发表的重要文献为主,完成专题报告,并在课堂上进行时长为20分钟的讲述以及现场质询。现场质询时,先由其他研究生根据自己的理解提出问题,教师补充提问和做最后的评价总结。原则上,专题报告必须有与测试相关的思考和分析,并应提交最终的电子文档。教师根据研究生的报告以及现场回答情况给出相应的评定成绩。研究生在他人报告的现场质询环节所提出的问题的质量将作为其成绩评定的重要组成部分。为便于研究生完成选题、搜集材料以及准备专题报告,教师会在课堂上结合自身的科研积累进行相应的专题报告,并给出选题方向和专题范例供研究生参考。

测试系统设计是针对实践能力培养的教学环节,目的在于强化测试系统设计能力,是在本科课程基础上对研究生知识应用能力的进一步深化。该环节分为两个阶段。一是教师在课堂上对若干个典型设计范例由浅入深地讲解,采用互动教学方式加深研究生对设计难点的理解。课堂教学时共选用3个设计范例。其中,第1个范例较简单,教师通过仔细讲解使研究生对设计流程有所了解;后面进行更接近工程实际的两个范例教学时,教师先给出设计题目,研究生若干人为一组讨论后推荐1人作为代表在黑板上写出设计结果,教师在课堂上组织学生对各组的设计结果进行充分讨论后给出参考答案和总结,以突出设计难点和其解决思路。二是在上述基础上,研究生自主选择设计题目,教师通过对研究生提交的设计作业存在的典型问题进行点评,有针对性地纠正存在的共性问题。

不同于本科测试技术课程的实验环节,自选试验环节属于研究性的试验项目,是兼具前沿性和实践性特点的综合性环节,也是研究生体验创新的重要途径。整个试验过程,研究生自主选题,自由组合,自行组织管理。试验没有确定的答案和结果,要求研究生若干人(一般4―6人)1组围绕课题组科研项目、参研课题、实验室特定设备和自己感兴趣的主题开展试验。自选试验中发现问题、分析问题和解决问题的过程即是研究生体验创新的过程。根据需要,学校可以适当资助研究生自行购置试验器材,搭建测试系统开展试验。教师通过选题讨论、疑难解答和报告评定等方式管理和控制试验进程和教学质量。

各教学环节与教学目标的关联如图1所示。由图1可以看出,改革后各教学环节更有利于强调知识广度和现代前沿的课程知识体系构建,并且设置的测试系统设计、专题讨论和自选试验三个环节大幅增加了前沿性、研讨性和实践性教学内容,有效加强了研究生创新能力和实践能力的培养,形成了鲜明的航空宇航教学特色。这具体体现在以下几个方面。

(1)通用与特色有机结合的教学内容、基础与前沿并重的教学思路是构建课程知识体系的保障。一方面,本课程的教学内容在强调通用测试技术的基础上更注重航空宇航特色,大多与专业应用背景有关,能够有效激发研究生的专业学习兴趣,并为研究生从事相关试验工作奠定基础。另一方面,理论教学安排注重夯实研究生的理论基础,专题讨论可使研究生了解先进测试技术的发展情况及其在航天领域的应用前景。

(2)高度参与互动的教学模式是创新能力培养的前提。创新意识是创新能力的基础,独特的互动教学模式有效激发了研究生的主动参与和积极思维的创新意识。本课程超过1/3的学时是围绕专题讨论展开的,课程要求研究生必须主动参与讨论,同时,教师要将提问情况作为考评标准之一。此外,试验环节也要求研究生相互协作,共同完成预定的试验项目。

(3)理论与应用紧密结合的教学方式是实践能力培养的基础。测试技术课程是一门以知识应用为导向的实践型课程。本课程设置的专题讨论、测试系统设计以及自选试验三个环节占整个课程学时的2/3以上,为研究生应用测试理论和基础知识的学习提供了充分发挥想象力和创造力的展示平台。

三、教学改革的成效

改革后的课程学时分配及考核情况如表3所示。借助于图2所示的具有良好互动性的课程网站,课程的理论教学学时被压缩到10学时。除了《测试基础理论》、《测试系统设计与评估》以及《航空航天试验概述》三章在课堂上讲授以外,其余的理论教学内容均被安排为自学。这种安排方式充分保证了其他三个教学环节(特别是专题讨论环节)的学时,为优化课程教学奠定了基础。

表4给出了近三年专题讨论选题的统计分析结果。需要说明的是:表中的“结合研究方向”是指研究生所选的题目能够结合本学科各研究方向的应用需求。“结合前沿”是指研究生所选的题目能够结合测试技术的发展前沿。“结合科研”是指研究生选题为所在课题组此前开展的科研工作。研究生可通过查阅前人公开发表的论文和已毕业研究生的学位论文了解,也可通过与导师或者高年级研究生的交流理解项目深层次的技术问题。“结合课题”是指研究生所选题目与该研究生作为主要参与人参加的研究课题有关。由表中数据可以看出:绝大多数专题都能够结合研究方向,有助于研究生对专业前沿和工程需求的理解与把握。这主要得益于专题准备阶段指导教师对选题的严格把关和有意引导研究生尽量选择与研究方向相关的题目。专题中也有相当比例的题目结合科研或者课题。尤其是结合课题的专题,由于研究生亲自参与了课题,有深刻的实际体验,报告效果极佳,也易于激发课堂讨论。需要说明的是:结合课题的选题数量基本保持不变,这主要是后续选课的飞行器总体设计和航天器系统与自主技术方向研究生相对接触试验性质科研项目较少以及部分研究生课题暂时没有确定的缘故。

表5给出了2014年度自选试验分析结果。由统计结果可以看出:绝大多数试验选题都是结合科研、课题和实验室设备进行的,并且有相当部分试验使用了专业实验室的重大实验设备。自选试验的调试过程对研究生发现、分析和解决问题的能力提出了挑战。通过参与自选试验,研究生了解了先进设备的用途和前沿课题的试验需求。由于所参与的课题是前沿的,部分试验获得的结果本身就具有创新性。这表明,通过依托专业实验室的科研仪器设备,自选试验取得了良好的教学效果。

依托互动良好的课程网站、反映学科前沿的科研课题以及强大的实验室科研设备,“航空宇航测试与试验技术”课程教学改革压缩了理论教学的学时,并通过专题讨论、测试系统设计和自选试验等三个教学环节,为研究生构建了合理的课程知识体系,加强了研究生创新能力和实践能力的培养力度,取得了良好的教学效果。本课程的教学改革探索开辟了新的航空宇航类专业研究生测试技术课教学模式,也可为类似专业教学改革探索提供有益的借鉴和参考。

参考文献:

[1]刘进志,马怀祥,智小慧.“测试技术”精品课程建设研究 与实践[J].中国电力教育,2012,(32).

[2]李孝红,崔文国,翁杰等.工科研究生创新能力培养现状 与改革[J].西南交通大学学报:社会科学版,2010,(4).

[3]陈花玲,仇国芳,王俐等.改革研究生课程体系 培养研 究生创新能力[J].学位与研究生教育,2005,(6).

[4]王丰.“机械工程测试技术”精品课程建设与实践[J]. 河北理工大学学报:社会科学版,2010,(5).

[5]李孟源,尚振东,郭爱芳等.强化测试技术实践教学,培 养学生综合应用能力[J].中国现代教育装备,2007,(11).

[6]贺德全.现代测试技术及应用课程教学改革探索[J].高 等教育研究,2011,(3).

测试基本理论知识范文5

关键词:软件测试;企业需求;教学方法

中图分类号:TP311.53—4 文献标识码:A 文章编号:1007—9599 (2012) 14—0000—02

随着软件产业迅速发展,软件产品的质量成为人们共同关注的焦点,软件测试的作用和地位越来越显得突出,它是软件产品质量控制的具体实现环节及其根本保证[1],社会对软件测试人才的需求量剧增,对软件测试人员的综合素质要求也越来越高。

但由于我国的软件测试技术起步比较晚,并由于主客观方面的种种原因,在大学计算机教育中,软件测试教育存在很多问题,无法达到《软件测试》课程教学的目的和要求,也无法满足业界对软件测试人才的需求。

一、教学现状

在目前的教学环境中,虽然《软件测试》是一门理论性和实践性都很强的专业课,但大多数院校在教学过程中,仍会忽视强调测试理论和相关基础的重要性。在理论教学过程中,不重视测试的基础教学,在培养过程中更多地停留在知识传授,忽视软件测试职业素质的培养,实际上,一个合格的测试人员除了具备测试专业知识外,严谨的工作习惯、良好的沟通能力和团队合作精神也是软件测试人员所必需的[2]。在实验教学过程中,一味依赖教材的理论内容,忽略思考的智力技能培养,所设计的实验内容不符合现实需求,软件测试的实践教学存在同社会脱节。在教学方法方面,传统教学方法形式单一,学生学习兴趣很低,自主学习能力较低。本文针对教学过程中理论教学、实践教学、教学方法三个方面,对软件测试人才的培养总结一些思考和心得。

二、思考和实践

(一)重视并渗透理论教学

重视软件测试课程的理论教学,基础的扎实与否直接影响了能力的可持续发展性。在制定课程大纲时,加大理论课时的分配,使学生从根本上认识到理论在课程学习中的重要性,不再简单的认为软件测试只是简单的“点击”等操作,而是一门对思考和逻辑要求很高的课程。好的软件测试人员拥有高敏感能力,高发散能力,高分析能力,而这些都是以扎实的理论基础为前提的。并在教学过程中,不仅仅以教材为理论传授基准,应结合项目中的实际测试场景和案例,加深对各个理论点的理解和运用,以树型结构串联零散的知识点,注重知识的内部体系结构,使学生系统的掌握测试的理论知识,锻炼思维发散和思考能力,从而引导学生对知识和技能进行举一反三、触类旁通的迁移。

将软件测试的思想深入广泛地渗透到所有的专业课程中。例如在各类程序设计语言基础课程中引入单元测试的思想,在软件工程课程中,强调软件测试的重要性,增强软件质量管理意识,在面向对象的分析和设计课程中,强调测试和开发并行并重的思想[3]。

(二)以企业需求作为实验教学的目标

1.以企业项目为教学内容

在传统教学中,软件测试实验的内容通常只单纯的利用教材上介绍的不同测试方法来“设计”实验,所设计的实验内容泛泛化,不仅不符合企业的需求,而且不符合项目测试中的完整性和规范化。在实际工作中,一个项目中所涉及到的测试技术和方法,以及这些技术的重难点,都很难在现有的实验教材中得以体现。而以项目为实验教学的方法,是以企业的需求和实践流程为出发点,在实验的教学过程中以项目为主线展开,以测试的流程由浅入深,把相关知识点融入到项目的各个环节中去,将项目完整的进行剖析,循序渐进[3]。

2.重视文档和流程

在企业的实际测试工作中,文档是非常重要的。我们以一个符合现实性的完整B/S模式的“图书管理系统”作为测试案例,该项目涵盖课程的主要知识要点和基本技能,项目大小和难易适中,提供给学生系统的代码、需求分析、概要设计书、详细设计书等必须文档[4],只有具备以上资料,才可真实的模拟实际工作模式。通过文档,使得学生明白所测软件提供什么功能?是否符合用户的需求,设计是否合理,结果与设计是否一致,通过文档,使得学生一边熟悉系统一边思考软件研发者在设计过程中的遗漏点。文档,不仅是测试人员与开发人员之间沟通的直接桥梁,而且这种彼此的不断沟通以及思考,直接影响了软件测试的最终质量。同时,除了以项目为教学的基本单位,并强调文档在项目中的重要性,还要严格按照工作中的实际情况,将学生分成若干个项目组。项目组分别设置测试经理、测试负责人、测试组员等角色,各尽其责。这种强调文档,各尽其责的项目教学方式,更加符合企业的实际需求,并有效锻炼了学生的团队合作能力。

测试基本理论知识范文6

关键词: 政治课 考试方式 校本策略 效果评价

考试不仅是对教学与学习效果的一种检测,而且会对教学与学生学习产生重要的导向作用。长期以来,政治课教学一直沿用了灌输式的教育模式。教师教教材,学生背教材,相对应的考试方式就是记忆考核。随着素质教育的不断推进,政治课的考试方式也逐渐由重记忆考核向着重能力考核转变。我们通过顺应这种转变,推动了教与学的共同发展。

一、改进政治课考试方式是适应教学改革与素质教育的需要

教师的教、学生的学和对学习效果的检测是统一的。教学改革必然引起学习评价与考试方式的转变,反过来也会促进教学发展。建构主义教育理念认为,教学是教师通过课堂活动帮助学生建构属于自己知识的过程,考试正是对这种建构效果的一种测量。因此,考试方式必须与新的教学要求相一致。

1.政治课传统考试方式的特点与弊端

由于传统教学以教材为中心,课堂教学与学生的学习都是围绕着教材而展开的。教师教的是教材,而教师对学生学习的要求,也只是掌握教材的基本内容,而考试所测量的也是学生对教材的掌握情况,因此,这种考试显著的特点就是记忆考核。谁的记忆好,谁就能得到高的考试分数,考试结果与学习效果显然不能统一起来。在考试题目设计上,反映出的特点就是考核的知识点少,题型单一且较为固定;在考试测量目标上,则是以教材知识的掌握为主,对思考和概括及知识迁移的要求不高;在考试题型搭配上,记忆性的题目多,而发挥性的题目少。接受性的学习模式与记忆性的考试方式,使得教学变成了一种空洞的说教,内容缺乏联系,知识缺乏迁移,同时也导致了学生学习上的惰性。学生学习中缺乏思考,知识掌握层次较低,运用和评价能力难以形成。由于学生一味地被动接受知识,许多学生的学习目的也就变成了应付考试,因此,教学与学习效果都难以保证。

2.素质教育呼唤新的学习评价与考试方式

由知识教育向素质教育,由知识接受向能力培养的转变,是近年来政治课改革的基本取向。这也从根本上使得考试测量的目标,从单一的掌握教材知识向着掌握知识与形成运用能力相统一转变。在教学策略上,由以教材和教师为中心向着以学生为中心转变。学生学习的知识范围不再限于课堂与教材,更重要的是与国家的政治生活及社会的发展联系起来,更加注重自身的全面发展,需要对社会生活有更为深刻的认知和了解,并形成自己正确的观点和看法,能够对社会现象做出正确的分析与判断,这种学习上的要求远远超出了教材和课堂自身,这样有利于学生的健康成长,加快学生的社会化进程,提高学生适应未来社会发展和自身职业发展的需要,形成良好的心理素质,促进个人全面发展。

与教学目标和教学要求的变化相适应,在考试方式上也从单纯的记忆考核向着运用能力方面转化。第一,考核与测量的方式更加开放灵活。例如,在考试形式上,有了开卷考试、政治论文、调查报告等。在题型方面增加了选择题、判断题、辨析与应用题、材料分析题、社会与生活现象评价等更加多样化的形式。第二,考核的知识点与知识面大为增加。由于多种考试题型的采用,一份试题的知识点一般由原来的30到40个,增加到现在的60到70个,甚至更多,难易程度也有了层次上的变化。这就要求学生掌握与涉猎更多的教材以外的相关知识,更加了解社会生活,有着更为成熟的社会认知。第三,测量评价标准的变化。原来的评价标准过于机械、死板,限于固定的结论与思维方式,答题的局限性很大。新的评价标准是掌握知识与形成能力的统一。一方面学生通过学习,要掌握教材与相关知识,另一方面学生将学到的知识形成迁移,能够分析、认识、解决有关的社会问题,显然这种要求要比原来高得多。

二、改进政治课考试方式的校本策略

对于改进政治课考试方式,提高政治课的命题质量,我们的策略是,首先把握好政治课的常用考试题型;其次做好试卷命题中的题型搭配。

1.把握好政治课常用考试题型

不同的考试要求,在题型选择与题型搭配上是不同的。依据题型的不同测量方向,我们将题型划分为三种不同的类别。第一,对基本知识点测量的类别。基本知识点构成一门课程学习的基础,其掌握情况如何关系着应用能力的形成,在课程学习中占有很重要的基础地位,因此,在一张试卷中这部分题目的比重是比较大的,一般占总量的百分之四十左右。由于基本知识点分布广,测量方式灵活,因此,这种题型能够较好地测量出学生对学科知识的掌握情况。课程中常见的基本知识点有人物、数据、时间、结论、观点,规定、现象与概念等。对这些问题考核常用的题型有选择题、判断题、填空题、改错题等。其中,选择题分单项选择题、双向选择题和不确定性选择题三种,三种题型在难度上依次加大,共同的特点是测量的知识点多,一个题目可以涉及多个知识点,考核的信度和区分度较高,而答好这样的题目需要准确、系统、全面掌握课程知识。判断、填空、改错等题型,考核的知识点单一,但对知识掌握的准确性要求很高,考试中学生常因为知识掌握不系统、不全面和理解的不准确而丢分,因此,这种题型也是政治课考试中的常用题型。

第二,对基础理论测量的类别。基础理论是一门课程的关键,属于中间层次的学习目标,只有将课程的基本理论系统掌握了、理解了,才能提升学习的目标层次,而许多学生的学习就局限于这个层面上,机械地重复记忆,由于缺乏知识之间的联系与贯通,对课程的学习也就难以达到系统掌握的学习要求。这部分知识测量常见的考试题型有:回答题、简答题、简述题、论述题等。这些题目重点测量学生对课程基本观点和基本理论的记忆、理解和掌握的程度,在一张试卷中一般占百分之三十的比重。

第三,对知识运用能力测量的类别。将所学知识迁移运用到实际中,能够认识分析和解决具体问题,这是一种高层次的测量目标,这种测量体现了素质教育的改革目标,同时也能使学生清醒地认识到自己的学习目的不是单单掌握课本知识,而是达到能够利用所学知识来解决实际问题。当然,高层次的学习目标是建立在低层次学习目标的基础上的,如果低层次的基本知识点和基本理论掌握不牢固或者不系统、不熟练,就会制约高层次学习目标的实现,能力形成也会受到局限。在测量方式上,高层次学习目标的测量方式主要有:分析题、辨析题、分析理解题、运用题等,这些题型在各类题目中的难度是最大的,在一张试卷中一般占百分之三十的比重。从考试结果上看,这些题目的得分率总体偏低,考试成绩的区分度较高,因此,能够测量出学生实际的学习水平。

2.做好政治课命题中的题型搭配

不同的考试要求,在题型设计与题型搭配上是不同的,一套高质量的试卷需要统筹考虑以下三个方面的问题。第一,确定需要考核的知识点的数量。近年来,随着素质教育的推进,政治课考试中对知识点的考核已经成为测量学生知识掌握情况的基本手段。知识点越多,测量的效度越高,也越能反映出学生对学科知识的掌握程度。在知识点的确立上,还要统筹考虑考试时间,使之与考试时间相协调。第二,确定考核的层次及各自所占的比重大小。在考核层次上,一般分为识记、理解和运用三个层面,相对应的难度分别为易、较难和难,各层次的所占比重一般为百分之四十、百分之三十和百分之三十,这样做既体现了照顾多数,又保证了答题有一个很好的效度和区分度。第三,确定题型与做好题型搭配。在题型选择上,一张试卷一般要有四到六种题型。选择什么样的题型,以及每一种题型所占分值,要综合考虑知识点的多少和测量的层次性要求来具体确定。

三、政治课考试方式改进后的效果评价