培训教材1软件测试基础课件

上传人:M****1 文档编号:590887606 上传时间:2024-09-16 格式:PPT 页数:76 大小:560KB
返回 下载 相关 举报
培训教材1软件测试基础课件_第1页
第1页 / 共76页
培训教材1软件测试基础课件_第2页
第2页 / 共76页
培训教材1软件测试基础课件_第3页
第3页 / 共76页
培训教材1软件测试基础课件_第4页
第4页 / 共76页
培训教材1软件测试基础课件_第5页
第5页 / 共76页
点击查看更多>>
资源描述

《培训教材1软件测试基础课件》由会员分享,可在线阅读,更多相关《培训教材1软件测试基础课件(76页珍藏版)》请在金锄头文库上搜索。

1、软件测试基础知识培训教材1-软件测试基础课程内容v软件测试背景v什么是软件测试v软件测试的流程v软件测试工具 _ Rational Test培训教材1-软件测试基础课程目标v了解软件测试工程师的职业要求及特点v掌握软件测试的基本概念 v熟悉常用的软件测试类型v熟悉软件测试的工作流程和阶段划分v了解软件自动化测试v理解软件测试与软件开发的相互关系培训教材1-软件测试基础你以前接触过软件测试工作么?你认为软件测试人员是做什么的?小插曲培训教材1-软件测试基础v英特尔奔腾CPU 计算机芯片被发现有浮点除法软件缺陷。 1994v英特尔的1.13MHZ奔腾III处理器可能导致运行程序被挂起,计算机生产商

2、召回已经交付用户的PC机。 2000臭名昭著的软件错误案例培训教材1-软件测试基础v爱国者导弹防御系统 一个小的系统时钟错误,导致在多哈袭击战中,系统被拖延100多个小时。 1991v美国航天局火星极地登陆 由于确定何时关闭推进器的程序中某一个数据位被以外修改,飞船在试图登陆火星表面失踪 1999臭名昭著的软件错误案例培训教材1-软件测试基础软件未达到产品设计规范表明的功能;软件出现了产品设计规范指明不会出现的错误;软件功能超出产品设计规范指明的范围;软件未达到产品设计规范虽未指出但应达到的目标;软件测试人员认为软件难以理解、不易使用、运行速度慢,或者最终用户认为不好。什么是软件缺陷?培训教材

3、1-软件测试基础为什么会出现软件缺陷?需求变化缺乏交流设计错误文档缺乏缺陷软件复杂开发工具时间压力培训教材1-软件测试基础软件缺陷的修复费用培训教材1-软件测试基础软件测试人员究竟做些什么?目标:尽可能目标:尽可能早早的的 发现发现软件软件缺陷缺陷, 并并确保确保其得以其得以修复修复培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有小插曲小插曲大家有愿意做测试工作的么?不愿意的原因?A、测试工作太枯燥。B、测试工作不需要什么技术,只有技术水平低的人才去做。C、测试工作没有创造性,我喜欢有创造的开发工作。D、做测试工作,发展空间不大,选择比较少。E、测试人员工

4、资比开发人员低F、其它培训教材1-软件测试基础优秀的软件测试人员应该具备的素质?软件测试员的一个基本素质是:打破沙锅问到底软件测试员应具备的素质:1.探索精神:软件测试员不会害怕进入陌生环境。2.故障排除能手:软件测试员善于发现问题的症结,喜欢猜谜。3.不懈努力:软件测试员总是不停尝试。他们可能会碰到转瞬即逝或者难以重建的软件缺陷;他们不会心存侥幸,而是尽一切可能去寻找。培训教材1-软件测试基础优秀的软件测试人员应该具备的素质4.创造性:想出富有创意甚至超常的手段来寻找软件缺陷。5.追求完美:他们力求完美,但是知道某些无法企及时,不去苛求,而是尽力接近目标。6.判断准确:软件测试员要决定测试内

5、容、测试时间,以及看到的问题是否算作真正的缺陷。7.老练稳重:软件测试员不害怕坏消息。8.说服力:软件测试员要善于表达观点,表明软件缺陷为何必须修复,并通过实际演示力陈诉观点。培训教材1-软件测试基础怎样成为优秀的软件测试人员?软件测试工程师广义所有的软件系统都需要的基础知识基础知识包括:基本的编程能力、面向对象方法、操作系统、数据库、计算机网络针对性对具体产品线的业务知识业务知识测试基础知识测试工具自动化测试测试的思维方式 软件工程广度深度专业敬业培训教材1-软件测试基础软件测试人员的发展阶段和机会初级软件测试工程师软件测试工程师项目软件测试经理测试经理项目经理高级软件测试工程师系统工程师培

6、训教材1-软件测试基础 测试工作太枯燥,没有创造性测试工作枯燥?喜欢看推理侦探小说么?测试的过程其实也和推理破案的过程一样的有趣。当进行了严密的推理终于发现一个大缺陷后,会很有成就感。没有创造性?测试也需要创造,新的测试方法,新的自动化测试工具,创造机会很多。培训教材1-软件测试基础成功的秘密强烈的动机坚定的信念做三件事强烈的愿望,确定的目标我最想做什么样的人?我一定要做得最好坚信我的选择是正确的我要坚持不懈做别人不去做的事做别人不敢去做的事做别人做不到的事培训教材1-软件测试基础课程内容v软件测试背景v什么是软件测试?v软件测试的流程v测试用例及其设计方法v软件测试工具 _ Rational

7、 Test培训教材1-软件测试基础你对软件测试的理解?小插曲培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有对软件测试的错误理解如果发布出去的软件有质量问题,那是软件测试人员的错。软件测试技术要求不高,至少比编程容易多了.软件测试是测试人员的事,与开发人员无关。设计-实现-测试,软件测试是开发后期的一个阶段。测试出没有故障,说明我们的软件没有缺陷。培训教材1-软件测试基础什么是软件测试?软件测试的定义软件测试的定义软件测试的对象软件测试的对象软件测试的目的软件测试的目的软件测试分类和比较软件测试分类和比较软件测试的内容软件测试的内容培训教材1-软件测试基础

8、密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有软件测试的定义软件测试的定义 软件测试(软件测试(Software testingSoftware testing)是软件生存期中的一个重是软件生存期中的一个重要阶段,是软件质量保证的关键步骤。通俗地讲,软件测试要阶段,是软件质量保证的关键步骤。通俗地讲,软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和就是在软件投入运行前,对软件需求分析、设计规格说明和编码进行最终复审的活动。编码进行最终复审的活动。19831983年年IEEEIEEE提出的软件工程术语中给软件测试下的定义提出的软件工程术语中给软件测试下的定义是:是:“

9、使用人工或自动的手段来运行或测定某个软件系统或使用人工或自动的手段来运行或测定某个软件系统或系统部件的过程,其目的在于检验它是否满足规定的需求或系统部件的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别弄清预期结果与实际结果之间的差别”。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有软件测试的对象 软件测试不等于程序测试,软件测试不等于程序测试,软件测试贯穿于软件定义和开发的软件测试贯穿于软件定义和开发的整个期间。需求分析整个期间。需求分析, ,概要设计概要设计, ,详详细设计细设计, ,以及程序编码等各个阶段所以及程序编码等各

10、个阶段所得到的文档得到的文档, ,包括包括需求规格说明需求规格说明, ,概概要设计规格说明要设计规格说明, ,详细设计规格说明详细设计规格说明以及以及源程序源程序, ,都是软件测试的对象都是软件测试的对象. .培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有软件测试的对象12345用户需求用户:我要什么?理解正确性理解正确性表达正确性表达正确性需求说明书需求分析员:我可以提供什么?设计说明书设计员:我要软件做什么?源程序程序员:我要要让计算机怎么做?运行结果计算机:程序运行得到的结果理解正确性理解正确性设计正确性设计正确性表达正确性表达正确性理解正确性理解

11、正确性编码正确性编码正确性运行正确性运行正确性输入正确性输入正确性相符合么?相符合么?培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有软件测试的目的基于不同的立场,存在着两种完全不同的测试目的。从用户(测试人员)的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可接受该产品。 从软件开发者的角度出发,则希望测试成为表明软件产品中不存在错误的过程,验证该软件已正确地实现了用户的要求,确立人们对软件质量的信心。 培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有软件测试的目的想以最少的时间和人力,系统地找

12、出软件中潜在的各种错误和缺陷。如果我们成功地实施了测试,我们就能够发现软件中的错误。测试的附带收获是,它能够证明软件的功能和性能与需求说明相符合。实施测试收集到的测试结果数据为可靠性分析提供了依据。测试不能表明软件中不存在错误,它只能说明软件中存在错误。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有软件测试的原则测试的目的在于发现错误 ,应尽早地和不断地进行测试 充分注意测试中的群集现象经验表明,测试后程序中残存的错误数目与该程序中已发现的错误数目成正比。所有的测试都应可追溯到客户需求 穷举测试是不可能的 严格执行测试计划,排除测试的随意性。应当对每一个

13、测试结果做全面检查。妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有软件测试的分类名称说明黑盒测试基于软件需求,而不是基于软件内部设计和程序实现的测试方式。白盒测试基于软件内部设计和程序实现的测试方式。单元测试主要测试软件模块的源代码。一般由开发人员而非独立测试人员来执行,因为测试者需要懂得该单元的设计与程序实现,测试者可能需要编写额外的测试驱动程序。集成测试将一些“构件”集成一起时,测试它们能否正常运行。这里“构件”可以是程序模块、客户机服务器程序等等。功能测试测试软件的功能是否符合功能

14、性需求,通常采用黑盒测试方式。一般由独立测试人员执行。系统测试测试软件系统是否符合所有需求,包括功能性需求与非功能性需求。一般由独立测试人员执行,通常采用黑盒测试方式。回归测试指错误被修正后或软件功能、环境发生变化后进行的重新测试。回归测试的困难在于不好确定哪些内容应当被重新测试。验收测试由客户或最终用户执行,测试软件系统是否符合需求规格说明书。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有软件测试的分类名称说明负载测试测试软件系统的最大负载,超出此负载软件可能会失常。压力测试概念上与负载测试相似,叫法不同。性能测试测试软件在各种状况下的性能,如在正常或

15、最大负载下的状况。易用性测试测试软件是否易用,主观性比较强。一般要根据很多用户的测试反馈信息,才能评价易用性。安装与反安装测试测试软件在“全部、部分、升级”等状况下的安装/反安装过程。恢复测试测试该系统从故障中恢复过来的能力。安全性测试测试该系统防止非法侵入的能力。兼容性测试测试该系统与其它软件硬件兼容的能力。比较测试通过与同类产品比较,考察该系统的优点、缺点。Alpha 测试一种先期的用户测试,此时系统刚刚开发完成。Beta测试一种后期的用户测试,此时系统已经通过内部测试,大部分错误已经改正,即将正式发行。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有

16、软件测试的分类与比较o测试方式n白盒测试:关心软件内部设计和程序实现,主要测试依据是设计文档n黑盒测试:不关心软件内部,只关心输入输出,主要测试依据是需求文档o 培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有软件测试的分类与比较o黑盒测试与白盒测试的比较黑盒测试与白盒测试的比较测试方式特征依据测试人员测试驱动程序黑盒测黑盒测试试只关心软件的只关心软件的外部表现,不外部表现,不关心内部设计关心内部设计与实现。与实现。又叫做功能测又叫做功能测试或数据驱动试或数据驱动测试。测试。软件需软件需求求任何人任何人(包括开(包括开发人员、发人员、独立测试独立测试人员和

17、用人员和用户)户)一般无需一般无需编写额外编写额外的测试驱的测试驱动程序动程序白盒测白盒测试试关注软件的内关注软件的内部设计与实现,部设计与实现,要跟踪源代码要跟踪源代码的运行。的运行。结构测试或逻结构测试或逻辑驱动测试。辑驱动测试。设计文设计文档档由开发人由开发人员兼任测员兼任测试人员的试人员的角色角色需要编写需要编写额外的测额外的测试驱动程试驱动程序序培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有软件测试的分类与比较o测试阶段测试阶段n单元测试、集成测试、单元测试、集成测试、系统测试、系统测试、验收测试。是验收测试。是“从小到大从小到大”、“由内至外

18、由内至外”、“循序渐进循序渐进”的测试过程,体现了的测试过程,体现了“分而治之分而治之”的思想。的思想。 n单元测试的粒度最小,一般由开发小组采用白盒方式来测试,单元测试的粒度最小,一般由开发小组采用白盒方式来测试,主要测试单元是否符合主要测试单元是否符合“设计设计”。 n集成测试界于单元测试和系统测试之间,起到集成测试界于单元测试和系统测试之间,起到“桥梁作用桥梁作用”,一般由开发小组采用白盒加黑盒的方式来测试,既要验证一般由开发小组采用白盒加黑盒的方式来测试,既要验证“设设计计”又要验证又要验证“需求需求”。 n系统测试的粒度最大,一般由独立测试小组采用黑盒方式来测系统测试的粒度最大,一般

19、由独立测试小组采用黑盒方式来测试,主要测试系统是否符合试,主要测试系统是否符合“需求规格说明书需求规格说明书”。 n验收测试与系统测试非常相似,主要区别是测试人员不同,验验收测试与系统测试非常相似,主要区别是测试人员不同,验收测试由用户执行。收测试由用户执行。 培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有软件测试的内容o测试内容n接口与路径测试。 n功能测试、健壮性测试、性能测试、用户界面测试、安全性测试、压力测试、可靠性测试、安装/反安装测试 测试阶段 主要依据 测试人员、测试方式 主要测试内容 单元测试单元测试系统设计文系统设计文档档由开发小组执行

20、白盒测试由开发小组执行白盒测试 接口测试、路径测试接口测试、路径测试 集成测试集成测试系统设计文系统设计文档档需求文档需求文档由开发小组执行白盒测试和由开发小组执行白盒测试和黑盒测试黑盒测试 接口测试、路径测试接口测试、路径测试功能测试、性能测试功能测试、性能测试 系统测试系统测试需求文档需求文档由独立测试小组执行黑盒测由独立测试小组执行黑盒测试试 功能测试、健壮性测试、性功能测试、健壮性测试、性能测试、用户界面测试、安能测试、用户界面测试、安全性测试、压力测试、可靠全性测试、压力测试、可靠性测试、安装性测试、安装/反安装测试反安装测试 验收测试验收测试需求文档需求文档由用户执行黑盒测试由用户

21、执行黑盒测试 培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有回顾一下v软件测试人员的目标v软件测试的对象v软件测试的目的v软件测试的分类v软件测试的内容培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有回头再看看对软件测试的错误理解回头再看看对软件测试的错误理解如果发布出去的软件有质量问题,那是软件测试人员的错。测试有助于提高软件的质量,但高质量的软件不是测试出来的。软件测试技术要求不高,至少比编程容易多了.好的测试人员不仅要掌握各种测试技术,还要具备丰富的编程经验和对BUG的敏感.测试的复杂之处,除了测试技术问题之外

22、,还有测试管理问题。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有回头再看看对软件测试的错误理解回头再看看对软件测试的错误理解开发人员参与的测试有单元测试和集成测试软件测试是测试人员的事,与开发人员无关。设计-实现-测试,软件测试是开发后期的一个阶段。测试出没有故障,说明我们的软件没有缺陷。测试是贯穿与软件项目的整个过程应该尽早开始测试测试只能说明故障存在,不能说明故障不存在。培训教材1-软件测试基础课程内容v软件测试背景v什么是软件测试?v软件测试的流程v测试用例及其设计方法v软件测试工具 _ Rational Test培训教材1-软件测试基础密级:内

23、部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有Life Cycle Testing测试生命周期UserRequirementsoftwareRequirementDesignProgramUnit DesignCodingUnitTestingIntegrationTestingSystemTestingAcceptanceTestingPrepare planVerifyPrepare planVerifyPrepare planVerify培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有Plan /AnalysisDesignCodingTes

24、t/DeliverTest Case DesignTest DevelopmentTest PlanningTest Execution/EvaluationSpiral Testing Process培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有Information GatheringTest PlanningTest Case DesignTest DevelopmentTest Evaluation/ExecutionPrepare for Next SpiralSystem/Acceptance TestingSummary Reportpla

25、ndocheckact(Steps)(interimreports)Iterative/Spiral Testing Process培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有测试的文档o测试计划:指明范围、方法、资源,以及相应测试活动的时间进度安排表的文档。o测试方案:指明为完成软件或软件集成特性的测试而进行的设计测试方法的细节文档。o测试用例:指明为完成一个测试项的测试输入、预期结果、预期执行条件等因素的文档。o测试规程:指明执行测试时测试活动序列的文档。o测试报告:指明执行测试结果的文档。培训教材1-软件测试基础课程内容v软件测试背景v什么是软件

26、测试?v软件测试的流程v测试用例及其设计方法v软件测试工具 _ Rational Test培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有什么是测试用例o 所谓的测试用例就是将软件测试的行所谓的测试用例就是将软件测试的行为活动,做一个科学化的组织归纳。软件测为活动,做一个科学化的组织归纳。软件测试是有组织性、步骤性和计划性的,而设计试是有组织性、步骤性和计划性的,而设计软件测试用例的目的,就是为了能将软件测软件测试用例的目的,就是为了能将软件测试的行为转换为可管理的模式。试的行为转换为可管理的模式。o 软件测试是软件质量管理中最实际的软件测试是软件质量管理

27、中最实际的行动,同时也是耗时最多的一项。基于时间行动,同时也是耗时最多的一项。基于时间因素的考虑,软件测试行为必须能够加以量因素的考虑,软件测试行为必须能够加以量化,才能进一步让管理阶层掌握所需要的测化,才能进一步让管理阶层掌握所需要的测试过程,而测试用例就是将测试行为具体量试过程,而测试用例就是将测试行为具体量化的方法之一。化的方法之一。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有不同阶段的测试用例不同阶段的测试用例培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有测试用例的基本要素测试用例的基本要素目的 前提条件

28、 输入数据或动作 期望的响应 各种环境设置 对应的需求培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有测试用例内容测试用例内容o 实施一次测试而向被测系统提供的输实施一次测试而向被测系统提供的输入数据、操作或各种环境设置。入数据、操作或各种环境设置。o 对交互式系统,软件交互执行过程的对交互式系统,软件交互执行过程的控制也是一种测试用例。控制也是一种测试用例。o 测试用例的设计与生成是依据测试大测试用例的设计与生成是依据测试大纲对其中每个测试项目的进一步实例化。比纲对其中每个测试项目的进一步实例化。比如:如:o 对于一个输入项的测试,应当设计一组测对于一个

29、输入项的测试,应当设计一组测试数据,包括合法的、边界的和非法的数据试数据,包括合法的、边界的和非法的数据等。等。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有测试用例设计的基本准则测试用例设计的基本准则v测试用例的代表性:测试用例的代表性:v 能够代表并覆盖各种合理的和不合理、合能够代表并覆盖各种合理的和不合理、合法的和非法的、边界的和越界的、以及极限的输法的和非法的、边界的和越界的、以及极限的输入数据、操作和环境设置等入数据、操作和环境设置等; ;v测试结果的可判定性:测试结果的可判定性:v 即测试执行结果的正确性是可判定的,每即测试执行结果的正确性是

30、可判定的,每一个测试用例都应有相应的期望结果;一个测试用例都应有相应的期望结果;v测试结果的可再现性:测试结果的可再现性:v 即对同样的测试用例,系统的执行结果应即对同样的测试用例,系统的执行结果应当是相同的。当是相同的。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有黑盒测试用例的设计方法o 具体的黑盒测试用例设计方法包括等具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、场景法、错误价类划分法、边界值分析法、场景法、错误推测法、因果图法、判定表驱动法、正交试推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等。验设计法、功能图法等。o 这

31、些方法是比较实用的,但采用什么这些方法是比较实用的,但采用什么方法,在使用时自然要针对开发项目的特点方法,在使用时自然要针对开发项目的特点对方法加以适当的选择。对方法加以适当的选择。 培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有等价类划分法等价类划分法o 等价类划分等价类划分 是一种典型的黑盒测试方法,是一种典型的黑盒测试方法,用这一方法设计测试用例完全不考虑程序的用这一方法设计测试用例完全不考虑程序的内部结构,只根据对程序的需求和说明,即内部结构,只根据对程序的需求和说明,即需求规格说明书。需求规格说明书。 o 由于穷举测试工作量太大,以致于无由于穷

32、举测试工作量太大,以致于无法实际完成,促使我们在大量的可能数据中法实际完成,促使我们在大量的可能数据中选取其中的一部分作为测试用例。选取其中的一部分作为测试用例。 培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有等价类划分法等价类划分法假假设设一一个个程程序序P P有有输输入入量量X X和和Y Y及及输输出出量量Z Z。在在字字长长为为3232位位的的计计算算机机上上运运行行。若若X X、Y Y取取整整数数,按按黑盒方法进行穷举测试:黑盒方法进行穷举测试:可能采用的可能采用的 测试数据组:测试数据组:o 2 232322232322 26464 o如如果果

33、测测试试一一组组数数据据需需要要1 1毫毫秒秒,一一年年工工作作3652436524小时,完成所有测试需小时,完成所有测试需5 5亿年。亿年。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有等价类划分法等价类划分法o 等价类划分法是把程序的输入域划分成等价类划分法是把程序的输入域划分成若干部分,然若干部分,然o后从每个部分中选取少数代表性数据当作测后从每个部分中选取少数代表性数据当作测试用例。试用例。o 每一类的代表性数据在测试中的作用等每一类的代表性数据在测试中的作用等价于这一类中价于这一类中o的其他值,也就是说,如果某一类中的一个的其他值,也就是说,如

34、果某一类中的一个例子发现了错例子发现了错o误,这一等价类中的其他例子也能发现同样误,这一等价类中的其他例子也能发现同样的错误;反之,的错误;反之,o如果某一类中的一个例子没有发现错误,则如果某一类中的一个例子没有发现错误,则这一类中的其这一类中的其o他例子也不会查出错误。他例子也不会查出错误。 培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有划分等价类和列出等价类表划分等价类和列出等价类表 o 把全部输入数据合理划分为若干等价类,把全部输入数据合理划分为若干等价类,在每一个等价在每一个等价o类中取一个数据作为测试的输入条件,就可以类中取一个数据作为测试的输

35、入条件,就可以用少量代表性的用少量代表性的o测试数据取得较好的测试结果。测试数据取得较好的测试结果。o等价类划分有两种不同的情况:等价类划分有两种不同的情况: 有效等价类有效等价类 是指对于程序的规格说明来说是合理的、有是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。利用有效等价类可检验程序意义的输入数据构成的集合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。是否实现了规格说明中所规定的功能和性能。 无效等价类无效等价类 与有效等价类的定义恰巧相反。与有效等价类的定义恰巧相反。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权

36、所有建立等价类表建立等价类表 o在确立了等价类之后,建立等价类表,列出在确立了等价类之后,建立等价类表,列出所有划分出的等价类:所有划分出的等价类:输入条件输入条件有效等价有效等价类类无效等价类无效等价类培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有确定测试用例确定测试用例 o根据已列出的等价类表,按以下步骤确定测根据已列出的等价类表,按以下步骤确定测试用例:试用例:为每个等价类规定一个唯一的编号;为每个等价类规定一个唯一的编号;设计一个新的测试用例,使其尽可能多地覆设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类。重复这一步,最盖尚未覆盖的

37、有效等价类。重复这一步,最后使得所有有效等价类均被测试用例所覆盖;后使得所有有效等价类均被测试用例所覆盖;设计一个新的测试用例,使其只覆盖一个无设计一个新的测试用例,使其只覆盖一个无效等价类。重复这一步使所有无效等价类均效等价类。重复这一步使所有无效等价类均被覆盖。被覆盖。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有举例举例 根据下面给出的规格说明,利用等价类根据下面给出的规格说明,利用等价类划分的方法,划分的方法,给出足够的测试用例。给出足够的测试用例。“一个程序读入一个程序读入3 3个整数,把这三个数值看个整数,把这三个数值看作一个三角形的作一个三

38、角形的3 3条边的长度值。这个程序条边的长度值。这个程序要打印出信息,说明这个三角形是不等边的、要打印出信息,说明这个三角形是不等边的、是等腰的、还是等边的。是等腰的、还是等边的。” ” 培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有举例举例o我们可以设三角形的我们可以设三角形的3 3条边分别为条边分别为A A,B B,C C。如果它们能够如果它们能够o构成三角形的构成三角形的3 3条边,必须满足:条边,必须满足:oA0A0,B0B0,C0C0,且,且A+BCA+BC,B+CAB+CA,A+CBA+CB。o如果是等腰的,还要判断如果是等腰的,还要判断A=

39、BA=B,或,或B=CB=C,或,或A=CA=C。o如果是等边的,则需判断是否如果是等边的,则需判断是否A=BA=B,且,且B=CB=C,且且A=CA=C。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有举例举例输入条件输入条件有效等价类有效等价类无效等价类无效等价类是否三角形的三是否三角形的三条边条边(A0A0),), (1 1)(B0B0),), (2 2)(C0C0),), (3 3)(A+BCA+BC),), (4 4)(B+CAB+CA),), (5 5)(A+CBA+CB),), (6 6)(A0A0),), (7 7)(B0B0),), (8

40、 8)(C0C0),), (9 9)(A+BCA+BC),), (1010)(B+CAB+CA),), (1111)(A+CBA+CB),), (1212)是否等腰三角形是否等腰三角形(A=BA=B),), (1313)(B=CB=C),), (1414)(C=AC=A),), (1515)(ABAB)andand(BCBC)andand(CACA) (1616)是否等边三角形是否等边三角形(A=BA=B)andand(B=CB=C)andand(C=AC=A) (1717)(ABAB),), (1818)(BCBC),), (1919)(CACA),), (2020)培训教材1-软件测试基础

41、密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有举例举例序序号号【A A,B B,C C】覆盖等价类覆盖等价类输出输出1 1【3 3,4 4,5 5】(1 1),(),(2 2),(),(3 3),(),(4 4),(),(5 5),(),(6 6)一般三角形一般三角形2 2【0 0,1 1,2 2】(7 7)不能构成三角不能构成三角形形3 3【1 1,0 0,2 2】(8 8)4 4【1 1,2 2,0 0】(9 9)5 5【1 1,2 2,3 3】(1010)6 6【1 1,3 3,2 2】(1111)7 7【3 3,1 1,2 2】(1212)8 8【3 3,3 3,4 4

42、】(1 1),(),(2 2),(),(3 3),(),(4 4),(),(5 5),(),(6 6),),(1313)等腰三角形等腰三角形9 9【3 3,4 4,4 4】(1 1),(),(2 2),(),(3 3),(),(4 4),(),(5 5),(),(6 6),),(1414)1010【3 3,4 4,3 3】(1 1),(),(2 2),(),(3 3),(),(4 4),(),(5 5),(),(6 6),),(1515)1111【3 3,4 4,5 5】(1 1),(),(2 2),(),(3 3),(),(4 4),(),(5 5),(),(6 6),),(1616)非等腰

43、三角形非等腰三角形1212【3 3,3 3,3 3】(1 1),(),(2 2),(),(3 3),(),(4 4),(),(5 5),(),(6 6),),(1717)是等边三角形是等边三角形1313【3 3,4 4,4 4】(1 1),(),(2 2),(),(3 3),(),(4 4),(),(5 5),(),(6 6),),(1414),(),(1818)非等边三角形非等边三角形1414【3 3,4 4,3 3】(1 1),(),(2 2),(),(3 3),(),(4 4),(),(5 5),(),(6 6),),(1515),(),(1919)1515【3 3,3 3,4 4】(1

44、 1),(),(2 2),(),(3 3),(),(4 4),(),(5 5),(),(6 6),),(1313),(),(2020)培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有边界值分析法边界值分析法由测试工作的经验得知,大量的错误是发由测试工作的经验得知,大量的错误是发生在输入或生在输入或输出范围的边界上,而不是在输入范围的输出范围的边界上,而不是在输入范围的内部。因此针内部。因此针对各种边界情况设计测试用例,可以查出对各种边界情况设计测试用例,可以查出更多的错误。更多的错误。 边界值分析是一种补充等价划分的测试用边界值分析是一种补充等价划分的测试

45、用例设计技术,例设计技术,它不是选择等价类的任意元素,而是选择它不是选择等价类的任意元素,而是选择等价类边界的等价类边界的测试用例。实践证明为检验边界附近的处测试用例。实践证明为检验边界附近的处理专门设计测理专门设计测试用例,常常取得良好的测试效果。试用例,常常取得良好的测试效果。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有边界值设计原则边界值设计原则o对边界值设计测试用例,应遵循以下几条原则:对边界值设计测试用例,应遵循以下几条原则:如果输入条件规定了值的范围,则应取刚达到如果输入条件规定了值的范围,则应取刚达到这个范围的这个范围的边界的值,以及刚刚

46、超越这个范围边界的值作边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。为测试输入数据。如果输入条件规定了值的个数,则用最大个数、如果输入条件规定了值的个数,则用最大个数、最小个数、最小个数、比最小个数少一、比最大个数多一的数作为测比最小个数少一、比最大个数多一的数作为测试数据。试数据。如果程序的规格说明给出的输入域或输出域是如果程序的规格说明给出的输入域或输出域是有序集合,有序集合,则应选取集合的第一个元素和最后一个元素作则应选取集合的第一个元素和最后一个元素作为测试用例。为测试用例。分析规格说明,找出其他可能的边界条件。分析规格说明,找出其他可能的边界条件。培训教材1-软件测试基础密

47、级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有其他一些边界条件其他一些边界条件 另一种看起来很明显的软件缺陷来源是当软另一种看起来很明显的软件缺陷来源是当软件要求输入时件要求输入时( (比如在文本框中比如在文本框中),),不是没有不是没有输入正确的信息,而是根本没有输入任何内输入正确的信息,而是根本没有输入任何内容,单单按了容,单单按了EnterEnter键。这种情况在产品说键。这种情况在产品说明书中常常忽视,程序员也可能经常遗忘,明书中常常忽视,程序员也可能经常遗忘,但是在实际使用中却时有发生。但是在实际使用中却时有发生。正确的软件通常应该将输入内容默认为合法正确的软件通常应该

48、将输入内容默认为合法边界内的最小值或者合法区间内某个合理值,边界内的最小值或者合法区间内某个合理值,否则返回错误提示信息。否则返回错误提示信息。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有场景法场景法 o 现在的软件几乎都是用事件触发来控现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形而同一事件不同的触发顺序和处理结果就形成事件流。这种在软件设计方面的思想也可成事件流。这种在软件设计方面的思想也可引入到软件测试中,可以比较生动地描绘出引入到软件测试中,

49、可以比较生动地描绘出事件触发时的情景,有利于测试设计者设计事件触发时的情景,有利于测试设计者设计测试用例,同时使测试用例更容易理解和执测试用例,同时使测试用例更容易理解和执行。行。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有场景法场景法 提出这种测试思想的是提出这种测试思想的是Rational Rational 公司,并公司,并在在RUP2000 RUP2000 (Rational Unified Process)Rational Unified Process)中文版当中中文版当中有其详尽的解释和应用。有其详尽的解释和应用。用例场景用来描述流经用例的

50、路径,从用例用例场景用来描述流经用例的路径,从用例开始到结束遍历这条路径上所有基本流和备开始到结束遍历这条路径上所有基本流和备选流。选流。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有基本流和备选流基本流和备选流 o 右图中经过用例的每条右图中经过用例的每条路径都用基本流和备选流路径都用基本流和备选流来表示,直黑线表示基本来表示,直黑线表示基本流,是经过用例的最简单流,是经过用例的最简单的路径。备选流用不同的的路径。备选流用不同的彩色表示,一个备选流可彩色表示,一个备选流可能从基本流开始,在某个能从基本流开始,在某个特定条件下执行,然后重特定条件下执行,

51、然后重新加入基本流中(如备选新加入基本流中(如备选流流 1 1 和和 3 3);也可能起源);也可能起源于另一个备选流(如备选于另一个备选流(如备选流流 2 2),或者终止用例而),或者终止用例而不再重新加入到某个流不再重新加入到某个流(如备选流(如备选流 2 2 和和 4 4)。)。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有基本流和备选流基本流和备选流o按照上图中每个经过用例的路径,可以确定以下不同按照上图中每个经过用例的路径,可以确定以下不同的用例场景:的用例场景:v场景场景 1 1 基本流基本流v场景场景 2 2 基本流基本流 备选流备选流 1

52、 1v场景场景 3 3 基本流基本流 备选流备选流 1 1 备选流备选流 2 2v场景场景 4 4 基本流基本流 备选流备选流 3 3v场景场景 5 5 基本流基本流 备选流备选流 3 3 备选流备选流 1 1v场景场景 6 6 基本流基本流 备选流备选流 3 3 备选流备选流 1 1 备选流备选流 2 2v场景场景 7 7 基本流基本流 备选流备选流 4 4v场景场景 8 8 基本流基本流 备选流备选流 3 3 备选流备选流 4 4o注:为方便起见,场景注:为方便起见,场景 5 5、6 6 和和 8 8 只考虑了备选流只考虑了备选流 3 3循环执行一次的情况。循环执行一次的情况。培训教材1-

53、软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有测试方法选择的综合策略测试方法选择的综合策略o以下是各种测试方法选择的综合策略,可以下是各种测试方法选择的综合策略,可在实际应用过程中参考。在实际应用过程中参考。n首先进行等价类划分,包括输入条件和输出条件的等价首先进行等价类划分,包括输入条件和输出条件的等价划分,将无限测试变成有限测试,这是减少工作量和提划分,将无限测试变成有限测试,这是减少工作量和提高测试效率的最有效方法。高测试效率的最有效方法。n在任何情况下都必须使用边界值分析方法。经验表明用在任何情况下都必须使用边界值分析方法。经验表明用这种方法设计出测试用例发

54、现程序错误的能力最强。这种方法设计出测试用例发现程序错误的能力最强。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有测试方法选择的综合策略测试方法选择的综合策略对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度。如果没有达到要求的覆盖标准,应当再补充足够的测试用例。对于业务流清晰的系统,可以利用场景法贯穿整个测试案例过程,在案例中综合使用各种测试方法。培训教材1-软件测试基础课程内容v软件测试背景v什么是软件测试?v软件测试的流程v测试用例及其设计方法v软件测试工具 _ Rational Test培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通

55、讯版权所有中兴通讯版权所有测试工具的分类测试工具的分类v白盒白盒测试工具:对代码的测试测试工具:对代码的测试v黑盒测试工具:功能和性能上的测试黑盒测试工具:功能和性能上的测试v测试管理工具:对测试计划、测试用测试管理工具:对测试计划、测试用例、测试实施进行管理例、测试实施进行管理v其他测试工具:专门针对于数据库的其他测试工具:专门针对于数据库的测试等工具测试等工具培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有测试工具测试工具oMIMI公司公司WinrunnerWinrunner(功能测试)(功能测试)LoadrunnerLoadrunner(性能负载测试

56、)(性能负载测试)TestdirectorTestdirector(测试流程管理)(测试流程管理)oIBMIBM公司公司RationalRationaloCompuwareCompuware公司公司QACenter,QACenter,包括包括QARun,QAload,QADirectorQARun,QAload,QADirector等等模块模块o其他测试工具其他测试工具微软微软WAS(WEBWAS(WEB服务器负载测试服务器负载测试) ),ACTACT(微软的(微软的Visual Studio Visual Studio 和和Visual Studio.NETVisual Studio.NET

57、带的一带的一套进行程序测试的工具套进行程序测试的工具 )培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有Rational Test工具用途列表工具用途列表软件软件用途用途Rational Rational AdministratoAdministrator r主要用于创建新的主要用于创建新的PROJECTPROJECT,包括需求,包括需求(RequestPro)(RequestPro)、测试、测试(Test Manager)(Test Manager)、及缺陷跟踪及缺陷跟踪(Clear Quest)(Clear Quest)的数据库创建的数据库创建并建立关

58、联并建立关联ClearQuestClearQuest变更管理及缺陷跟踪变更管理及缺陷跟踪ClearQuest ClearQuest Maintenance Maintenance ToolToolClearQuestClearQuest维护工具,主要用于创建、维护工具,主要用于创建、修改、删除修改、删除ClearQuestClearQuest的的ConnectionConnectionClearQuest ClearQuest DesignerDesignerClearQuestClearQuest维护工具维护工具, ,主要用于维护某一主要用于维护某一指定的指定的Connect/SchemaC

59、onnect/Schema的用户、访问权的用户、访问权限及其他属性定义(如缺陷等级)等维限及其他属性定义(如缺陷等级)等维护护TestManagerTestManager测试计划制定及执行工具测试计划制定及执行工具License Key License Key AdministratoAdministrator rRationalRational注册管理器注册管理器培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有软件(执行文软件(执行文件名称)件名称)用途用途PureCoveragePureCoverage白盒测试工具,记录代码覆盖率。不支白盒测试工具,记

60、录代码覆盖率。不支持持C+ Builder/DelphiC+ Builder/DelphiPurifyPurify白盒测试工具,用于内存泄漏检查白盒测试工具,用于内存泄漏检查QuantifyQuantify白盒测试工具,用于性能瓶颈分析白盒测试工具,用于性能瓶颈分析Purify Plus Purify Plus For UnixFor Unix包括以上三个工具,不过是包括以上三个工具,不过是ForFor Unix UnixRequisiteProRequisitePro 需求分析工具需求分析工具RobotRobot自动测试工具,类似自动测试工具,类似WINRUNNDERWINRUNNDER,加

61、上,加上VTVT可以做并发测试可以做并发测试SoDA for SoDA for WordWord报表生成工具,需要报表生成工具,需要VBAVBA测试。一般不直测试。一般不直接运行,运行后接运行,运行后SoDASoDA在在wordword中增加了菜中增加了菜单,可以进行模板设计。单,可以进行模板设计。TestFactoryTestFactory可靠性测试,非常耗时。可靠性测试,非常耗时。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有小插曲小插曲开发人员与测试人员开发人员与测试人员 矛矛 和和 盾盾?o 开发人员对自己的程序往往做不到开发人员对自己的程序往往

62、做不到“无情无情”。但如果测试人员真的做到了但如果测试人员真的做到了“无情无情”却会引起开发人却会引起开发人员的愤怒,遭人白眼。由于开发与测试存在员的愤怒,遭人白眼。由于开发与测试存在“对立对立”关系,开发人员与测试人员很容易产生矛盾,这对项关系,开发人员与测试人员很容易产生矛盾,这对项目而言是一种伤害。目而言是一种伤害。开发人员的注意事项:(1)不要敌视测试人员。要理解测试的目的就是发现缺陷,是测试人员的工作职责。不要以为测试人员吃饱了没事干,存心找茬。(2)不要轻视测试人员,别说人家技术水平差,不配搞开发只好搞测试。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴

63、通讯版权所有小插曲开发人员与测试人员 矛 和 盾?o测试人员的注意事项:测试人员的注意事项:o(1 1)发现缺陷时不要嘲笑开发人员,别说他的程序真臭、)发现缺陷时不要嘲笑开发人员,别说他的程序真臭、o到处是到处是BugBug。o(2 2)在开发人员压力太大时或心情不好时不要火上浇油,)在开发人员压力太大时或心情不好时不要火上浇油,o发现缺陷时别大声嚷嚷。发现缺陷时别大声嚷嚷。o不要相互讽刺对方,例如:不要相互讽刺对方,例如:oA A对对B B说:你唯一的特点就是无能。说:你唯一的特点就是无能。oB B对对A A说:你唯一的特点就是粗鲁。说:你唯一的特点就是粗鲁。培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有小插曲开发人员与测试人员 矛 和 盾?还要注意的是,如果测试人员与开发人员的关系非常好,可能会导致在测试的时候“手下留情”,这对项目也是一种伤害! 培训教材1-软件测试基础密级:内部公开密级:内部公开 中兴通讯版权所有中兴通讯版权所有欢迎提问和讨论谢谢谢谢培训教材1-软件测试基础

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号