软件测试报告【精编5篇】
【导言】此例“软件测试报告【精编5篇】”的文档资料由阿拉题库网友为您分享整理,以供您学习参考之用,希望这篇资料对您有所帮助,喜欢就复制下载支持吧!
软件测试报告范文【第一篇】
关键词:项目驱动法;软件测试;教学方法
作者简介:赵晓君(1979-),女,河南南阳人,郑州轻工业学院软件学院,讲师;黄艳(1976-),女,河南信阳人,郑州轻工业学院软件学院,副教授。(河南 郑州 450002)
基金项目:本文系郑州轻工业学院校级青年教师教学改革项目的研究成果。
中图分类号: 文献标识码:A 文章编号:1007-0079(2013)07-0101-02
随着软件产业的快速发展,软件系统的规模越来越大,功能实现也越来越复杂,导致软件中存在的缺陷数量大大增加,这些缺陷将会带来各种损失,甚至出现灾难性的后果。因此,如何保证软件质量已成为所有使用软件和开发软件的人们关注的焦点。软件测试作为软件工程的一个重要组成部分,是目前用来验证软件是否能够满足用户需求功能的唯一有效方法,是保证和提高软件质量的重要环节。为适应软件产业的发展趋势和满足软件测试人才的大量需求,目前已经有许多大学在软件工程专业添加软件测试课程或者添加软件测试专业方向。
软件测试专业包含多门专业课程,有“软件测试理论”、“软件测试技术”和“软件缺陷管理”等,其中,“软件测试理论”课程重点为初学测试的同学讲解测试的基础理论知识,主要包括软件测试基本理论、软件测试方法和技术等,在多门专业课程中占有举足轻重的地位。
一、“软件测试理论”教学现状
“软件测试理论”课程重点介绍软件测试的基本理论,因此整个课程主要以教师讲授为主,在教学的过程中存在以下问题:
1.教学内容理论性较强,难以调动学生学习的主动性
对于初学软件测试的学生,首先要向其讲授相关测试理论,使其建立系统的测试理念。
但是学测试的学生大都是理科生,喜欢操作性强的课程,“软件测试理论”课程的理论性太强,需要背诵很多概念性的知识,这对于他们来说是比较困难,不能激发学习的主动性,教学效果不理想。
2.测试方法和技术案例实际应用价值不足,学生很迷茫
测试方法和技术是“软件测试理论”课程学习的重点和难点,这部分内容仅靠老师的讲解和书本上的案例很难让学生深入理解掌握测试技术的内涵,学生在学习这部分知识时会产生迷茫:学习这些知识有什么用处,在具体的项目测试中,应该怎样应用这些知识?没有实际的项目案例做支撑,学生会失去继续学习下去的兴趣。
针对上面的问题,本文提出将项目驱动法应用于“软件测试理论”课程的教学中,学生在进行项目实践的同时,根据需要学习软件测试相关理论知识,这样有助于提高学生的学习主动性,有助于理论知识的牢固掌握,有助于提高学生的实践技术能力,改善该课程的教学效果。
二、项目驱动法
项目驱动法是目前中国教育领域中一种比较新的教育教学方法。
所谓项目驱动法,是师生通过共同实施一个完整的项目工作而进行的教学活动,它既是一种课程模式,又是一种教学方法。[1]这里的项目根据课程教学内容的不同所包含的涵义也不同。在“软件测试理论”课程教学中,项目即指一个已经开发完成的软件测试工作。通常,项目教学都是实践导向的和任务驱动式的教学。
在项目驱动模式的教学活动中,教师根据学生现有的知识水平和项目经验选择一个合适的项目,以项目实施为主线展开教学活动,把课程相关的知识点的讲解融入项目操作的每个步骤中。在项目实施的过程中,以学生为中心,教师主要做组织和指导工作,学生在整个项目的实施过程中处于探索知识的情景中,充分发挥主动性、积极性和创新精神,综合运用所学的知识和技能解决实际问题,最终达到有效地将所学知识系统化深入化的目的。
这种模式从根本上将传统课堂中老师满堂灌转变为“学生为主体,教师为主导”的教学模式。同时,学生通过一个具体项目的实践,感受到了真实项目管理的思想和团队协作的必要性,提高了学生的创新能力和项目实践能力。拥有真实项目的实践经验使得学生在择业时拥有很大竞争优势。
将项目驱动法应用于“软件测试理论”课程教学中,在课程理论教学中加入一个完整的项目测试实践环节,通过项目实践能够很好地激发学生的学习主动性,使学生经历了一个“先做,遇到问题,再学,解决问题,再做,获得经验”的学习过程,最终完成一个完整的软件测试实践,同时也学到了“软件测试理论”课程应该掌握的理论知识。这样,既解决了软件测试理论课程理论性太强的问题,又解决了测试方法和技术案例实际应用价值不足的问题;而且丰富了学生的实践经验,提高了软件测试理论课程的教学效果。
三、“软件测试理论”课程教学目标和教学内容
1.教学目标
通过本门课程的学习和实践,理解软件测试理论与原则;掌握主流测试技术和方法,熟悉测试用例的编制、熟悉软件测试的基本流程,熟悉软件测试过程中各类技术文档的编制规范,并能灵活运用测试技术解决实际问题。
对于一个具体项目软件,每一个学生都能够顺利完成如下手工测试流程:根据软件需求规格说明书撰写测试计划,设计测试用例、进行测试环境配置和测试数据准备工作、执行各种测试,撰写缺陷报告、跟踪并修复缺陷、进行测试评测,最后提交测试总结报告,达到软件企业对测试专业人才的要求。
2.教学内容
“软件测试理论”课程的教学内容主要包括软件测试基本理论、软件测试基本技术、软件测试过程和软件测试工具。[2]
软件测试基本理论包括软件测试、软件缺陷和测试用例的基本概念,测试的目的、测试模型、测试分类和测试流程。
软件测试基本技术包括白盒测试和黑盒测试;其中白盒测试包括静态测试和动态测试,动态测试又包括程序插桩、逻辑覆盖、基本路径测试等;黑盒测试包括等价类划分、边界值分析、因果图法、判定表法、场景法等。这些基本技术都是在进行测试用例设计时使用的。
软件测试过程是指执行测试的过程,通常分为四个阶段:单元测试、集成测试、系统测试和验收测试。
软件测试工具有多种:功能测试工具、性能测试工具和测试管理工具等。
四、项目驱动法的应用方案
1.项目的设计
实施项目驱动法,首先需要设计项目。项目的设计与选取直接影响到该教学模式的教学效果及学生的学习兴趣。“软件测试理论”课程项目的选取与其他课程又有所不同,学生要进行的操作是对现有的或者已经开发完成的软件的测试工作,因此在设计项目时应遵循以下几条原则:
第一,项目是现有的软件或已经开发完成的软件,软件中有部分明显错误,有部分隐藏错误;明显错误有助于提高学生的测试积极性,隐藏错误有助于启发学生进行更深入的测试。
第二,项目具有典型性,代表大部分软件的共性。通过该项目的测试,学生可以掌握大多数软件的测试流程和测试方法。
第三,项目中有多种情景元素,符合使用多种测试技术和方法,有助于学生在进行项目测试的同时,学习使用多种测试技术设计测试用例的方法。
第四,项目大小和难易适中。每个项目组的人数控制在3~5个人,设计的项目能使学生通过努力在一定的时间内完成。
根据以上原则,本课程目前选择的项目是《企业薪酬管理系统》。
2.项目驱动法的实施
本课程通过让学生进行企业薪酬管理系统完整的测试流程实践的同时,讲解测试需求编写、测试计划编写、测试用例设计、测试环境配置、测试执行、缺陷跟踪和管理、测试报告撰写等内容。课程授课方式主要是分阶段讲解测试过程和测试要求,每一个阶段开始,老师先讲原理,选择部分内容做例子进行讲解,然后学生比照例子跟着做;阶段内容完成时,学生提交完成的文档,老师选择典型的问题进行讲评,然后进行下一个阶段的内容,如此类推直至测试结束。
企业薪酬管理系统测试流程设计如图1所示。
本课程课时为60学时,根据图1系统测试流程图安排,基于项目驱动法的“软件测试理论”课程安排如表1所示。
在课程进行的过程中,必须严格按照项目的测试流程进行,测试流程为:先获取项目测试需求,撰写测试计划,设计测试用例,执行测试,提交缺陷报告并跟踪修复缺陷,最后提交测试总结报告。课程结束,要求学生提交项目测试报告,测试报告包括多个文档,整个流程中每个阶段的工作必须有撰写规范的文档提交,如:测试计划、测试用例、测试执行报告、缺陷报告和测试总结报告等等。
测试报告既体现了教师项目教学的结果,也体现了学生对测试知识技能的掌握水平。通过评价学生作品,找出学生在学习过程中的薄弱环节,进一步改进项目驱动教学的教学安排,使其能够发挥最大的教学效果。
五、结束语
本文针对软件学院软件工程专业的培养对象和教学特点,把真实项目引入“软件测试理论”课程课堂教学中,采用项目驱动教学法,从项目的需求评审、测试计划、测试用例设计、测试执行、缺陷报告、测试评测到测试总结一个完整的测试流程,交给学生组建测试团队,按照流程进行任务分配和管理,最终完成整个项目的测试工作。通过一个完整项目测试流程的完成,有效提高学生的学习和实践能力、解决问题的能力、团队协作能力等,使学生在掌握软件测试的各种测试技术和基本流程的同时,积累了一定的项目测试经验,为他们今后的就业打下了良好的基础。
参考文献:
软件测试报告【第二篇】
关键词 软件文档;软件工程;设计和实现;管理和维护
一、软件文档的作用
(1)管理依据。在软件开发过程中,管理者必须了解开发进度、存在的问题和预期目标。每一阶段计划安排的定期报告提供了项目的可见性,定期报告还提醒各级管理者注意该部门对项目承担的责任及该部门效率的重要性。开发文档规定若干个检查点和进度表,使管理者可评定项目的进度。如果开发文档有遗漏、不完善或内容陈旧,管理者将失去跟踪和控制项目的重要依据。(2)任务之间联系的凭证。大多数软件开发项目通常被划分成若干任务,由不同的小组去完成,学科方面的专家建立项目,分析员阐述系统需求,设计员为程序员制定总体设计,程序员编制详细的程序代码,质量保证专家和审查员评价整个系统性能和功能的完整性,负责维护的程序员改进各种操作或增强某些功能。这些人员需要的互相联系是通过文档资料的复制、分发和引用而实现的,因而任务之间的联系是文档的一个重要功能。大多数系统开发方法为任务的联系规定了一些正式文档。分析员向设计员提供正式需求规格说明,设计员向程序员提供正式设计规格说明等等。(3)质量保证。对于负责软件质量保证和评估系统性能的人员需要程序规格说明、测试和评估计划、测试该系统用的各种质量标准以及关于期望系统完成什么功能和系统怎样实现这些功能的清晰说明;必须制订测试计划和测试规程,并报告测试结果;还必须说明和评估完全、控制、计算、检验例行程序及其他控制技术。这些文档的提供可满足质量保证人员和审查人员上述工作的需要。(4)培训与参考。软件文档的另一个功能是使系统管理员、操作员、用户、管理者和其他有关人员了解系统如何工作,以及为了达到各自的目的,如何使用系统。(5)维护支持。维护人员需要软件系统的详细说明书以帮助熟悉系统,尽可能找出并修正错误、改进系统 ,以适应用户需求的变化或适应系统环境的变化。(6)历史档案。软件文档可用作未来项目的一种资源。通常文档记载系统的开发历史,可使有关系统结构的基本思想为以后的项目所利用。系统开发人员通过审阅以前的系统以查明什么部分已试验过,什么部分运行的很好,什么部分因某种原因难以运行而被排除。良好的系统文档有助于把程序移植到新的系统环境中。
二、软件文档管理在项目进程中的重要作用
软件文档管理,是指在一个系统(软件)项目开发进程中将提交的文档进行收集管理的过程。文档管理在项目开发中不是很受重视,当发现其重要性时,已经为时已晚。整个项目可能因此变得管理混乱,问题无据可查。作为管理完善的项目文档,管理者完全可依顺它的轨迹看清整个项目进展的脉络,通过对阶段性文档的把握使整个项目质量得到很好的掌控。制定一套完整有序的项目文档管理规定十分必要,其作用有以下6个方面。(1)它是项目管理者了解开发进度、存在的问题和预期目标的管理依据。(2)大多数软件开发项目会被划分成若干个任务,并由不同的组去完成。文档管理则是不同小组任务之间联系的重要凭证。(3)可提供完整的文档,保证项目开发的质量。(4)项目文档是系统管理员、操作员、用户、管理者和其他相关人员了解系统如何工作的培训与参考资料。(5)项目文档将为系统维护人员提供维护支持。(6)项目文档作为重要的历史档案将成为新项目的开发资源。
现在大多数金融、通信企业为了更好的服务客户、准确掌握自身数据,都在不遗余力地建立数据仓库系统。企业数据仓库(EDW)从筹建项目组到软件开发建设再到系统上线维护,基本涉及了软件项目建设的所有环节,对文档管理提出了较全面的要求。以下就EDW建设为例作了探讨,首先,借助VSS软件建立项目文档管理服务器以保存所有的项目文档。其次,项目保存的文档要涵盖项目管理、项目调研、项目开发、项目应用、系统管理、系统测试验收、项目培训、版本控制、数据质量管理、用户手册、系统上线等整个项目周期。从项目管理者的亲身体会来讲,这些文档的保存往往是混乱无序、无法快捷地获得所需信息。究其原因,项目组在系统开发过程中虽然很重视文档的保存,但是忽视了文档的管理。文档归档没有正式的管理要求,缺少文档提交的依据和规则。最后,建立文档管理规定。由于项目文档管理员按照规定对文档进行管理,因此项目经理及小组成员都能快速得到自己所需的各类文档。项目经理还可很清晰地透过项目文档把握项目进展情况。
三、如何建立软件文档管理规定
从不同的行业和项目的个性出发,需要管理者结合实际情况制订出适合自身文档管理的规定。《软件文档管理指南》和《计算机软件产品开发文件编制指南》(以下统称《指南》)给提供了相关的指导。首先要明确关于软件项目文档的具体分类。《指南》中提出文档从重要性和质量要求方面可分为非正式文档、正式文档;从项目周期角度可分为开发文档、产品文档、管理文档;更细致还可分为l4类文档文件,具体有:可行性研究报告、项目开发计划、软件需求说明书、数据要求说明书、概要设计说明书、详细设计说明书、数据库设计说明书、用户手册、操作手册、模块开发卷宗、测试计划、测试分析报告、开发进度月报、项目开发总结报告。这样的分类细化了项目进度中各个阶段所需管理的文档。其次需要将项目文档进行归类整理。对EDW项目组文档情况与软件文档管理指南进行对比分析,可以看出,没有规范管理的EDW项目组文档存在以下4方面问题。(1)项目组在开发初期针对业务部门和科技部门进行了需求及信息调研,可覆盖部分软件需求和数据需求说明书的内容,但缺少业务部门对项目需求描述和变更的文档记录。这部分文档需建立相应目录予以保存。(2)对于设计说明,在系统较复杂的情况下,设计阶段应分解成概要设计和详细设计两个步骤。目前EDW项目组只对ETL模块提供了概要设计说明书,并没有单独的存放目录,而是同其他设计文档混乱地放在一起。对于比较复杂的应用开发项目,应将这两种设计说明文档分目录管理。(3)在项目测试验收中,项目组没有要求将测试计划文档和测试结果报告进行规档,只重视了测试过程中的问题文档,因此无法掌控测试进度与质量。(4)EDW项目组的工作分为模型设计、ETL、集市应用3个工作小组,对应的文档管理需要围绕这3个主题进行。其中模型设计和ETL都是数据仓库项目实施的模块,集市应用则包括建立在数据仓库基础上的小项目开发。因此,文档管理也应该针对这3个部分不同的性质制定管理规则。
针对EDW文档管理存在的问题,EDW项目组最终依据通用规则建立了正式的项目文档管理规定。具体规定有以下5点。(1)将文档分为两大部分提交管理。项目常规文档和项目归档文档。常规文档的提交和使用根据项目组内部小组成员任务的不同进行权限划分;项目归档文档由项目管理主管(或项目文档管理员)将项目中的重要文档从常规文档中进行分类归档。(2)常规文档管理目录分为项目日常管理文档和项目流程管理文档。(3)日常管理文档包括项目报告、会议纪要、项目管理模板、重大问题跟踪、数据质量管理。项目报告可分为个人周报、小组周报、项目周报、项目简报,项目简报。并都按照不同目录进行分类管理。(4)提交完整的项目开发、应用开发流程文档。一般包括项目计划、业务需求说明书、数据需求说明书、模块、应用开发文档、系统测试文档、详细设计文档、系统测试文档、用户手册、上线文档、培训资料、系统运行维护等。(5)所有项目组成员均建立VSS软件环境下的对应用户,各自拥有对以上各类文档的读、写、增加、删除权限。由各项目小组长保证提交已保存文档的质量;由文档管理员或项目经理整体把握项目文档在各阶段的提交情况。
参考文献
[1]李成大。软件工程基础[M].北京:电子工业出版社,2003
软件测试报告【第三篇】
随着软件产业的快速发展,软件质量越来越被重视。作为软件质量重要保障之一的软件测试也越来越普遍被认可。为了满足用户对第三方测试的需求和填补开发方对资源缺口,将软件测试工作外包给专业的测试团队进行测试是软件发展的必然趋势。为确保规范化的软件测试外包管理过程,企业可依据CMMI模型中的软件外包管理规定对软件外包过程进行管理。本文基于CMMI提出了一种软件测试外包的方式,实践应用证明其能有效地提高组织的软件产品质量和软件工程化水平。
关键词软件产品 软件测试 软件外包 CMMI 软件质量
软件定义一切这一新兴概念的提出,昭示着软件界的竞争将越来越激烈,软件技术的发展将越来越快。与此同时,软件质量也得到软件行业的重视。而确保软件质量的方法有多种,如:在软件开发过程中进行规范化管理,可以避免开发过程中的不规范、不安全的设计习惯;进行软件测试则能发现软件潜在的质量问题和验证软件使用中的可靠性等。
软件对测试的需求,使从事软件测试行业的人员快速增多。软件测试技术的发展和用户对第三方测试的需求,促进了软件测试外包行业的发展和兴起。另一方面,软件测试外包还可以在一定程度上填补战略目标所需的资源和企业自身资源之间存在的缺口。在多方面因素的共同作用下,越来越多的专业化测试团队快速成长起来,软件测试外包也越来越普遍。
为加强软件测试外包的规范化管理,本文提出一种基于CMMI的软件测试外包管理方法。该方法的实施可以有效地提高软件工程化水平,使软件测试外包活动可以更有效地进行,从而达到不断提高软件质量的目的。
1 软件测试外包管理架构设计
基于CMMI的管理过程改进
CMMI是由卡内基梅隆大学软件工程研究室开发的软件成熟度模型,是一种集成过程改进模型。但是,CMMI模型只是规定了每个过程域应该“做什么”,并没有指明每个过程域具体“怎么做”。
为了具体解决“怎么做”的问题,本文提出一种新的软件过程管理架构。本文将软件管理活动规范成进入准则、输入、活动步骤及要求、输出和完成准则等五个部分,如图1所示。
其中,输入是来自以前活动的工作产品;进入准则是判断是否可以进入本次活动的依据;活动步骤及要求是本次活动的具体内容;完成准则是判断本次活动是否完结的依据;输出是通过本次活动创建的工作产品。
软件测试外包管理过程架构
软件测试外包是指甲方公司将项目完全交给乙方公司,由乙方公司出人力物力,完成软件的测试工作,并按照客户需求,提供测试计划制定、测试用例编写等一系列测试技术服务。本文提出的软件测试外包管理过程由三个部分组成,分别是签订软件测试外包合同、软件测试外包活动的执行与管理、验收软件测试外包活动,如图2所示。其中三个活动的具体执行分别遵循节中提出的管理过程。
软件测试外包人员角色
为加强软件测试外包管理过程,需要定义的人员角色包括软件技术负责人、软件合同负责人、分包方代表、客户代表、软件质量师、软件配置管理员。各人员分工主要为:
软件技术负责人:提供软件测试需要的代码、程序和文档,并负责相关解释。
软件合同负责人:负责软件测试外包合同的起草、活动的管理和验收。
分包方代表:负责参加软件测试外包合同和验收外包合同的评审,组织测试外包活动中的相关评审。
客户代表:负责参加软件测试外包合同和验收外包合同的评审。
软件质量师:监督整个软件测试外包活动的过程符合性和产品符合性。
软件配置管理员:对软件测试外包活动产生的工作产品进行配置管理。
2 软件测试外包管理具体实现
签订软件测试外包合同
根据对软件测试外包项目的技术特征和非技术特征所作的综合评估,选择合适的供方,与供方签订软件测试外包合同。
进入准则
本活动的进入准则包括:
(1)软件测试外包项目输入已经明确,需要测试的代码、软件、文档保持一致,测试输入通过相关评审并已入库。
(2)相关人员已经过选择供方、洽谈协议的有关技能的培训。
根据不同的外包测试级别,所需要准备的文档也不相同,如对于软件单元测试和软件部件测试需要提供的文档是《软件设计说明》,对于软件配置项测试需要提供的文档是《软件需求规格说明》,对于软件系统测试需要提供的文档是《系统/子系统需求规格说明》。
输入
本活动的输入包括:《合格供方名录》。
活动步骤及要求
(1)软件技术负责人和软件合同负责人根据项目需要,确定需要由外部提供软件测试的产品和服务。a)在项目策划或制定技术方案时,软件技术负责人应组织确定需要由外部提供的软件测试产品和服务,软件合同负责人负责审核软件技术负责人提出的测试产品和服务的完整性和合理性。b)软件技术负责人将软件测试外包的产品和服务列表,形成项目软件测试外包清单。c)该软件测试外包清单应纳入软件测试外包合同或《软件开发计划》。d)软件合同负责人选择供方。 ① 由软件合同负责人组织供方评价,实施测试供方的选择工作。优先从本组织的《合格供方名录》中选取资质完整性好的供方。必须选择经过评审,能满足要求的分包方;在无客户或法定管理机构指定的分包方时,优先选择符合CNAS-CL01《检测和校准实验室能力认可准则》、CNAS-CL45《检测和校准实验室能力认可准则在软件检测领域的应用说明》及DILAC/AC01《检测实验室和校准实验室能力认可准则》要求并获得认可的实验室。外包项目,供方必须具有同级的保密资质,并按本组织保密管理规定执行。
② 如果申请的供方在《合格供方名录》中,软件测试外包协议直接由软件技术负责人签署意见,主管领导审批;如果申请的供方不在《合格供方名录》中,应按照本组织的合格供方评定程序进行正式选择。将候选供方的资质调查情况按照合格供方评定程序执行,同时将其提供的相应的质量、保密等资质证明文件作为附件。
(2)建立并评审软件测试外包合同。a)所有由外部提供软件测试产品必须同供方签订软件测试外包合同或其等效文件(以下均简称合同)。软件合同负责人负责起草合同。b)软件合同负责人需要和供方确定,定期检查供方进展情况的监控计划,将监控计划或等效条款作为合同的一部分。监控计划需要明确里程碑监控、联合评审的时机、供方进度安排等。c)在供方协议执行前或做任何更改之前,项目软件技术负责人按照软件评审规程要求评审软件测试外包合同。d)客户有要求时,应邀请客户或客户代表参与对合同的评审。e)软件技术负责人与分承制方仔细审查合同的每个条款,确保合同没有错误和隐患,由组织领导或授权代表签订合同。
输出
本活动的输出包括:软件测试外包合同及其附件。
完成准则
本活动的完成准则包括:软件测试外包合同已经签订。
软件测试外包活动的执行与管理
软件合同负责人和供方共同执行软件测试外包合同,监督供方协议的执行。
进入准则
本活动的进入准则包括:软件测试外包合同已经签订。
输入
本活动的输入包括:软件测试外包合同及其附件。
活动步骤及要求
(1)软件合同负责人将外包项目的具体实施要求(文档编写要求、技术规范)及时传递给供方。
(2)依据合同中监控计划的规定对供方进行监督,具体包括:a)按照供方合同/技术协议规定的里程碑,召开项目协调会或由供方提供跟踪报告,跟踪项目的进展情况、供方投入(人力、物力、财力)的充分性、项目风险情况等,并对供方提出改进意见和要求。b)软件合同负责人应测量供方项目的进展、测试质量的情况,记录合同执行过程中发现的偏差。
(3)软件合同负责人参加里程碑监控、联合评审,填写里程碑评审报告,并保存评审报告/会议纪要/跟踪报告的复制件。
(4)软件合同负责人应协调和处理合同中出现的问题,包括:a)当供方进度或测试质量达不到要求时,软件合同负责人应协调供方,分析原因并采取相应的措施,以确保产品符合要求。b)软件合同负责人正式评审和监督活动中发现测试项目执行情况与项目计划的偏差大于20%时,软件合同负责人应与供方进行交流找出问题的原因,提出解决措施。
输出
本活动的输出包括:软件测试产品、阶段评审报告和实施过程的相关记录。
完成准则
本活动的完成准则包括:合同规定的测试产品和服务完成且齐套,通过了相关的评审和检查。
验收软件测试外包活动
对供方提交的软件测试产品(一般指软件测试需求规格说明、软件测试计划、软件测试说明、软件测试报告以及相关的记录文件)进行验收,证明供方提交的软件测试产品能够满足合同规定的要求。
进入准则
本活动的进入准则包括:供方已经完成合同规定的软件测试产品和服务。
输入
本活动的输入包括:
(1)软件测试外包合同及其附件。
(2)供方提供的软件测试产品。
(3)软件测试外包活动中形成相关管理类记录文件。
活动步骤及要求
(1)软件合同负责人评价并验收供方提交的软件测试产品。
制定验收大纲;在验收前与供方一起,按照本组织软件评审规程的要求评审验收大纲;依据验收大纲,组织召开供方产品验收会,执行验收评审,记录在验收中发现的问题,提交验收报告,验收结论设为: 通过:实施交付。有条件通过:实施交付,并形成会议纪要,提出解决问题的措施和确认计划。未通过:不能交付。形成会议纪要,提出解决问题措施、确定再次交付/验收的日期。软件合同负责人测量供方提供的软件测试产品的规模和验收中发现的问题。软件质量师跟踪发现的问题,直至问题解决。
(2)软件技术负责人组织软件外包测试产品的移交和纳入本组织的受控库,在移交过程中应遵守合同。移交后,软件合同负责人依据供方交付产品的情况,评价供方性能,并填写供方监督记录。
输出
本活动的输出包括:验收报告。
完成准则
本活动的完成准则包括:供方提交的软件测试外包产品已经移交完成。
3 总结
基于对CMMI模型的研究,本文提出了一种供方协议管理过程域在软件测试外包领域的具体的实施方案,解决了“怎么做”的问题。本文的软件测试外包活动三部分组成,分别是签订软件测试外包合同、软件测试外包活动的执行与管理、验收软件测试外包活动。简述了这三个活动的具体步骤,保证每个步骤都有相关证据遗留,将软件工程落到实处,对提高组织的软件产品质量和软件工程化水平将发挥重要作用。
参考文献
[1]张卫。关于计算机软件发展的研究[J].生物技术世界,2003.
[2]巨振乐,赵明辉。正在兴起的软件测试外包。时代经贸,2009(120).
[3]CMMI Product for Development,Version Mellon University Software Engineering Institute,August 2006.
作者单位
软件测试报告【第四篇】
关键词:软件测试;软件质量;课程建设
中图分类号:G642
文献标识码:B
1 引言
随着信息技术的飞速发展,软件产品应用于社会的各个领域,软件质量的保证是一个人们普遍关注的问题。软件开发者想要高质量的软件产品,用户更希望能有稳定、方便、有效、经济的高质量软件产品。提高软件质量的重要途径主要有过程控制和软件测试。高校对软件质量保证和软件测试人员的培养担负着主要责任。对于软件学院来说,一个很重要的挑战是如何解决计算机专业特别是软件工程专业理论与实践严重脱节的问题。
本文分别就师资队伍建设、教学内容的选择、教学方式改革、实验大纲的设计、立体化教材建设、考核体系的设计等方面来阐述软件质量保证与测试课程的建设。我们的目标是培养应用型、复合型、国际化的高级软件人才。
2 师资队伍的建设
浙江大学软件学院对于师资队伍建设的思路是产学研一体化的教学框架体系。“软件质量保证与测试”课程是一门理论与实践并重的课程,既需要丰富的实践项目经验又需要深入的理论知识。按照以上思路,我们的师资队伍包括三个组成部分:外籍教师、本校教师、企业技术主管。其中,企业技术主管主要是来自道富公司的质量保证、测试经理。这门课的分工大致是外籍教师负责理论教学;企业技术主管负责学生的课程实践和项目培训;本校教师负责整个课程建设、联系以及对学生的指导,特别是指导英语学习有一定难度的学生。
另外,学院对于教师的再学习与培训也提供很大的支持,如支持教师参加国家软件测试中心的相关技术培训、国内外关于软件质量保证与测试课程学术交流等。
3 教学内容及其改革
“软件质量保证与测试”是为软件学院及相关专业的本科生开设的专业基础课。该课程按软件质量保证和测试的原理、软件测试技术和实践三部分组织内容,包括软件工程概述,软件测试和质量保证的基本概念、思想和方法,各种测试的方法和技巧,软件测试用例的设计;如何组织和管理软件测试项目、如何进行软件质量分析,最终建立全面的质量保证体系。通过本课程的学习,学生应基本上了解并掌握有效的测试策略、方法和技术,测试计划和测试用例的设计,测试自动化的应用,测试团队的建立和测试项目的管理,更清楚、准确地报告测试缺陷,对软件产品质量的正确评估以及软件测试和质量保证的关系和区别。
我们现行的教学大纲由理论学习和课程实践两部分构成。浙江大学将每年分成4个学期,每学期8周上课时间,而这门课的时间为一学期,总学时为48,按照2比1的学时来配置理论与实践部分,即课堂时间为32学时和上机时间为16学时。
目前教学内容安排如下:
4 教学方式改革
教学方式的改革主要遵循以下两条原则进行:
(1) 以案例教学为主线,通过丰富的实际案例引导学生对具体的质量保证概念、测试方法等有深刻的认识,同时也注重研讨式、启发式教学,鼓励学生尝试自己寻找资料解决问题。
(2) 加强综合性实验项目的训练,全面锻炼学生的团队组建能力、团队沟通合作能力、测试计划编写能力、测试用例设计能力、测试能力、组织文档能力。
5实验大纲的设计
本课程非常重视实践教学。我们学院特别聘请道富公司质量保证、测试经理来培训学生的实践动手能力。另外,除了布置适量的白盒和黑盒测试外,还专门布置设计了2~3套完备的全英文综合性实验设计、需求分析文档、各种支持文档、评分方法和政策。对于实验大纲的设计,我们还强调以下几个方面:
(1) 系统、综合性。以实际项目为背景,贯穿多个知识点,锻炼学生综合运用所学知识解决实际问题的能力。通过实践参与,学生可掌握质量保证的概念和过程,测试计划的制定,测试用例的设计、测试用例的执行、测试报告的书写、测试Bug的分析和描述。
(2) 团队合作。实验采用分组的形式完成,每组由5~7名成员组成,其中一人为组长。组长负责项目进展、分工协作、测试计划的制定等工作,其他组员分别就相关模块进行各自的测试策略、测试用例设计以及完成测试报告等。然后通过角色交换,充分发挥学生的沟通能力。
(3) 鼓励创新。鼓励学生发挥想象力,对各种测试方法进行尝试,在最后报告中要求写出具体的思路和分析结果。
6立体化教材建设
完善多媒体教材和教学资源(包括电子书籍、技术文档、实验平台、在线交流等),进一步加强网络资源建设,特别是教学素材库的建设。现有课程主页上的内容主要有:课程信息,包括教师队伍、课程描述、课程政策、详细的教学大纲、教学日历等;每节课的详细PPT课件;各类作业、解答以及往年的作业、试卷资料等;课程实践项目(project)的各种信息、支持文档,实验平台的链接等;网络资料库,包括电子教材、文档的收集以及与课程紧密相关的各种资料、网站等;在线留言版,与学生互动的模块,学生可完全匿名发表任何意见、建议和提问答疑,今后可进一步就该课程中学生容易疑惑的地方建立FAQ。
现在我们采用外教选编的电子课件、讲义作为主要教材并推荐相关英语教材。课程实践项目我们采用道富公司的实际项目对学生进行培训。我们下一步的目标是:
(1) 编写一本中文实验指导教材。
(2) 编写一本双语教学教材。
7考核体系的设计
软件质量保证与预测课程的考核将一改传统的由一次期末考试成绩决定学生的情况,这是因为该课程是一门理论与实践紧密结合的课程。对于考核体系的设计我们的具体思路如下:
(1) 改革课程考核,采取多因素评定学生课程成绩,而不是仅凭一次考试评定学生能力,从而调动学生学习热情,促进学生研究性学习能力的发展。学生的最终成绩由课程实践项目(40%)和期末考试(60%)组成。
(2) 强调评分的客观、公平和透明性。开学初就给定课程考核的政策和每个课程项目的详细评分标准。
(3) 学生参与评分。课程实践项目、尤其是分组项目,教师难以全面掌握每个学生的表现,但可以给整个团队评分,具体每个成员的分数则由学生参与自评。
参考文献
[1] 古乐,史九林。 软件测试技术概论[M]. 北京:清华大学出版社,2006.
[2] 古乐,史九林。 软件测试案例与实践教程[M]. 北京:清华大学出版社,2007.
[3] 杨根兴,蔡立志,陈昊鹏,蒋建伟。 软件质量保证:测试与评价[M]. 北京:清华大学出版社,2007.
[4] 朱三元。 软件质量及评价技术[M]. 北京:清华大学出版社,1990.
软件测试报告【第五篇】
摘 要:随着计算机的广泛应用和计算机科学技术的不断发展,计算机系统的组成也相应发生了许多变化,计算机软件的主导作用愈加明显。软件工程的进一步发展,给软件测试及测试管理带来很大帮助。本文简要介绍了软件测试管理的概念、计划、活动、功能、周期、工作量模型及其应用。
关键词:软件测试管理;软件过程;软件质量
1 软件测试管理的系统活动
实践证明,对软件进行测试管理可及早发现错误,避免大规模返工,降低软件开发费用,为确保最终件质量符合要求,必须进行测试与管理。对于不同企业的不同类产品、同一企业的不同类产品、或不同企业的同一类产品,其各阶段结果的形式与内容都会有很大的不同。所以对于软件测试管理我们除了要考虑测试管理开始的时间、测试管理的执行者、测试管理技术如何有助于防止错误的发生、测试管理活动如何被集成到软件过程的模型中之外,还必须在测试之前,制订详细的测试管理计划,充分实现软件测试管理的主要功能,缩短测试管理的周期。
软件测试管理计划
一个成功的测试开始于一个全面的测试管理计划。因此,在每次测试之前应做好详细的测试管理计划:
首先应该了解被测对象的基本信息,选择测试的标准级别,明确测试管理计划标识和测试管理项。在定义了被测对象的测试管理目标、范围后必须确定测试管理所使用的方法,即提供技术性的测试管理策略和测试管理过程。在测试管理计划中,管理者应该全面了解被测试对象的系统方法、语言特征、结构特点、操作方法和特殊需求等,以便确定必要的测试环境,包括测试硬件/软件及测试环境的建立等等。由于任何一个软件不可能没有缺陷、系统运行时不出现故障,所以在测试管理计划中还必须考虑到一些意外情况,也就是说,当问题发生时应如何处理。因为测试管理具有一定难度,所以对测试管理者应进行必要的测试设计、工具、环境等的培训。最后,还必须确定认可和审议测试管理计划的负责人员。
软件测试管理过程
我们对测试过程中每个状态进行记录、跟踪和管理,并提供相关的分析和统计功能,生成和打印各种分析统计报表。通过对详细记录的分析,形成较为完整的软件测试管理文档,保障软件在开发过程中,避免同样的错误再次发生,从而提高软件开发质量。
软件测试管理内容
具体的测试管理内容有:
测试计划管理:单元测试、集成测试和系统测试的测试计划的录入、修改、删除、查询和打印。
测试用例管理: 测试用例的编号、增加、删除、修改、拷贝和查询;对测试用例的测试情况进行管理,测试状态包括:未测试、测试中、已测试,测试结果为:通过、未实现、存在问题等。
问题报告管理:问题报告处理流程(问题报告整改报告)、实现问题报告与测试案例的关联。
测试报告管理:生成单元测试、集成测试和系统测试的测试报告。
项目管理:对项目、项目中模块、用户及权限进行管理。
通信管理模块:把测试计划、测试用例等测试信息分发给各测试,同时接收各测试传送来的测试结果。
测试:测试负责把测试需求信息接收给测试工具进行测试,并把测试结果发送给测试管理工程数据库中。
除了以上这些,在测试管理过程中还应对人员和环境资源进行管理。
软件测试管理人员:为了实现软件测试管理,需要组成一个专门的测试管理队伍,队伍中的人员都能够胜任他们所担任的角色是很重要的。另外,还需确认每种角色的人员应具有必要的权利以完成他们的责任。同时为了能够获得很高的效率,每个测试管理参与者又都应最大限度地发挥出其最大的技术能力。
环境资源包括硬件资源和软件资源,它们是提供测试管理的基础。每类资源都可以用四个特征来说明:资源描述、可用性说明、需要该资源的时间、及该资源被持续使用的时间。
软件测试管理的主要功能
测试控制对象的编辑和管理:该部分主要是为各测试阶段的控制对象提供一个完善的编辑和管理环境。
测试流程控制和管理:测试流程的控制和管理是基于科学的流程和具体的规范来实现的,整个过程避免了测试人员和开发设计人员之间面对面的交流,减少了以往测试和开发之间难免的摩擦和矛盾,提高了工作效率。
统计分析和决策支持:在系统建立的测试工程数据库的基础上,进行合理的统计分析和数据挖掘。
软件测试管理周期
任何程序,无论大小,都可能会有错误发生。每一个新版本都需要进行新特性的测试和其他特性的一些回归测试。
测试管理人员在接受一个测试管理任务后,除了要制定周密的测试管理计划,还要进行测试方案管理;并且对测试人员所做的测试活动予以记录,做好测试流程的管理。同时,对发现的缺陷予以标识,一方面反馈给提交测试的人员;另一方面将存在的问题和缺陷存入案例库,直至测试通过。
软件测试管理工作量模型的提出
软件测试管理所花费的工作量一般用于:测试、人员、文档料等方面的管理。参考Belady和Lehman模型,我们认为软测试管理工作量模型可以是:
M=P+K×e×p(c-d)+O
其中:M―总的软件测试管理工作量;
P―软件测试工作量;
K―软件测试管理经验常数;
c―软件测试管理复杂程度;
d―软件测试管理人员对软件的熟悉程度的参数;
O―由于不确定因素而带来的额外工作量。
从模型可以看出,如果软件测试管理的方法不好(即软件测试管理过程过于复杂),或者软件测试管理人员对软件不熟悉,不能充分发挥他们的技术能力,那么软件测试管理的工作量或成本将指数地增加。
3软件测试管理的应用
软件测试是一个完整的体系,主要由测试规划、测试设计、测试实施、资源管理等相互关联、相互作用的过程构成。软件测试管理系统可以对各过程进行全面控制。具体的实现过程如下:
1)按照国际质量管理标准,建立适合本单位的软件测试管理体系,以提高本单位开发的软件质量,并降低软件开发及维护成本;
2)建立、监测和分析软件测试过程,以有效地控制、管理和改进软件测试过程,监测软件质量,从而确定交付或软件的时间;
3)制定合理的软件测试管理计划,设计有效的测试案例集,以尽可能发现软件缺陷。并组织、管理和应用庞大的测试案例集;
4)在软件测试管理过程中,管理者、程序员、测试员(含有关客户人员)协同工作,及时解决发现软件问题;
5)对于软件测试中发现的大量的软件缺陷,进行合理的分类以分清轻重缓急。同时进行原因分析,并做好相应的记录、跟踪和管理工作;
6)建立一套完整的文档资料管理体系。因为,软件测试管理很大程度上是通过对文档资料的管理来实现的。软件测试每个阶段的文档资料是以后阶段的基础,又是对前面阶段的复审。
4总 结
软件质量优劣直接影响着计算机应用的深度和V度。因而科学地对软件进行测试和进行软件测试管理是十分必要的。我们认为软件测试管理已变得越来越重要,我们也将运用测试管理工具,对目前正在进行的中间件、构件库以及嵌入式软件测试等科研课题和一些中、大型软件项目进行有序的测试管理,使我们的工作更有特色。所以,只有科学地进行测试管理,才能促进软件开发、测试单位重视全面质量管理、促进软件测试管理队伍的成长、促进软件质量的提高、进一步推动软件测试行业产业化过程。
参考文献
[1] 郑人杰,计算机软件测试技术,清华大学出版社,1992.