-软件测试培训讲义课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《-软件测试培训讲义课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 培训 讲义 课件
- 资源描述:
-
1、 软件测试软件测试 物流系统研发部物流系统研发部 刘定文刘定文2009-5为打造中国第一物流品牌做好系统监理工作为打造中国第一物流品牌做好系统监理工作 软件测试的目的软件测试的目的n测试流程标准化 n测试过程规范化 n促使软件生产更系统、更专业化软件测试的原则软件测试的原则l不应测试自己开发的程序不应测试自己开发的程序l设计测试用例时,不仅有确定的输入数据,还有确定的设计测试用例时,不仅有确定的输入数据,还有确定的输出数据输出数据l测试用例不仅有合理的,也要有非合理的测试用例不仅有合理的,也要有非合理的l除了检查程序是否做完了它应该做的事,还要检查它是除了检查程序是否做完了它应该做的事,还要检
2、查它是否做了不应该做的事。否做了不应该做的事。l保留全部测试用例,作为软件的组成部分保留全部测试用例,作为软件的组成部分l程序中存在错误的概率与在该段程序中已发现的错误数程序中存在错误的概率与在该段程序中已发现的错误数成正比成正比教程目录教程目录n第一课:测试模型n第二课:测试分类n第三课:验收测试n第四课:系统测试n第五课:集成测试n第六课:单元测试n第七课:基于应用服务器的测试n第八课:软件测试用例n第九课:测试用例设计的基本原则n第十课:软件测试用例设计方法n第十一课:测试用例设计编写标准n第十二课:测试用例的组织和跟踪n第十三课:测试结果分析和质量分析报告n第十四课:软件测试项目管理第
3、一课:测试模型第一课:测试模型:v模型模型软件测试模型软件测试模型:v模型、W模型一、v v模型模型:模型反映出了测试活动与分析设计活动的关系。V模型指出:单元和集成测试应检测程序的执行是否满足软件设计的要求;系统测试应检测系统功能、性能的质量特性是否达到系统要求的指标;验收测试确定软件的实现是否满足用户需要或合同的要求。V模型存在一定的局限性,它仅仅把测试作为在编码之后的一个阶段,是针对程序进行的寻找错误的活动,而忽视了测试活动对需求分析、系统设计等活动的验证和确认的功能。图例图例1:V 1:V 模型模型第一课:测试模型第一课:测试模型:w模型模型软件测试模型软件测试模型:v模型、W模型二、
4、W模型:W模型伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、设计等同样要测试,测试与开发是同步进行的。W模型有利于尽早地全面的发现问题。例如,需求分析完成后,测试人员就应该参与到对需求的验证和确认活动中,以尽早地找出缺陷所在。同时,对需求的测试也有利于及时了解项目难度和测试风险,及早制定应对措施,这将显著减少总体测试时间,加快项目进度。图例图例2:W2:W模型模型第二课:测试分类第二课:测试分类测试分类划分方法测试分类划分方法:1.:1.按测试阶段按测试阶段、2.按测试类型测试类型按测试阶段:1.设计阶段2.单元测试阶段3.集成测试阶段4.系统测试阶段5.验收测试阶段6.回归测试(
5、复测)阶段 按测试类型:1.功能测试2.界面测试3.数据处理测试4.流程测试5.压力测试6.并发测试7.安全测试8.性能测试9.安装测试 第二课:测试分类第二课:测试分类测试分类划分方法测试分类划分方法:1.:1.按测试阶段按测试阶段、2.按测试类型测试类型按测试阶段:1.设计阶段2.单元测试阶段3.集成测试阶段4.系统测试阶段5.验收测试阶段6.回归测试阶段 1.设计阶段:对需求分析结果,概要设计,详细设计书进行检查.分析工作量与人力资源配置编写软件测试计划。2.单元测试:单元测试完成对软件最小的结构的测试,一般用来验证模块的功能属性,它利用设计文档作为指导,主要使用白盒测试技术;但也可以测
6、试其它项目,如性能、可用性等等,可使用“黑盒”或“白盒”方法进行。在单元测试中,检查出模块内部的错误是单元测试的主要工作。单元测试时机:紧接在编码之后,源程序编制完成并通过复审和编译检查完成。第二课:测试分类第二课:测试分类测试分类划分方法测试分类划分方法:1.:1.按测试阶段按测试阶段、2.按测试类型测试类型按测试阶段:1.设计阶段2.单元测试阶段3.集成测试阶段4.系统测试阶段5.验收测试阶段6.回归测试阶段 3.集成测试:集成测试是组装软件的系统测试技术,按设计要求把通过单元测试的各个模块组装在一起之后,进行集成测试以便发现与接口有关的各种错误。为什么要做集成测试?每个模块都能单独工作,
7、但这些模块集成在一起之后却不能正常工作。主要原因是,模块相互调用时接口会引入许多新问题。有那些常见问题?数据经过接口可能丢失;一个模块对另一模块可能造成不应有的影响;几个子功能组合起来不能实现主功能;误差不断积累达到不可接受的程度;全局数据结构出现错误。第二课:测试分类第二课:测试分类测试分类划分方法测试分类划分方法:1.:1.按测试阶段按测试阶段、2.按测试类型测试类型按测试阶段:1.设计阶段2.单元测试阶段3.集成测试阶段4.系统测试阶段5.验收测试阶段6.回归测试阶段 4.系统测试:系统测试应该由若干个不同测试组成,目的是充分运行系统,验证系统各部件是否正确 软件开发完毕后应与系统中其它
8、成分集成在一起,此时需要进行一系列系统测试。包括恢复测试、安全测试、强度测试和性能测试等。在系统测试时强调系统与外部设备联合调试。以检验系统完整性,正确性。5.验收测试:系统开发生命周期方法论的一个阶段,这时相关的用户和或独立测试人员根据测试计划和结果对系统进行测试和接收。它让系统用户决定是否接收系统。它是一项确定产品是否能够满足合同或用户所规定需求的测试。这是管理性和防御性控制。第二课:测试分类第二课:测试分类测试分类划分方法测试分类划分方法:1.:1.按测试阶段按测试阶段、2.按测试类型测试类型按测试阶段:1.设计阶段2.单元测试阶段3.集成测试阶段4.系统测试阶段5.验收测试阶段6.回归
9、测试阶段 6.回归测试:回归测试就是漏洞修复完成后再对软件进行测试,以确保软件没有产生“回归”或因修复而变得更 糟,这种测试一般要重新运行最初发现问题的原始测试程序。回归测试有两个焦点:1.有没有产生新的漏洞 2.修复是否确实使缺陷消除。第二课:测试分类第二课:测试分类测试分类划分方法测试分类划分方法:1.:1.按测试阶段按测试阶段、2.按测试类型测试类型按测试类型:1.功能测试2.界面测试3.数据处理测试4.流程测试5.压力测试6.并发测试7.安全测试8.性能测试9.安装测试 1.功能测试 对软件功能进行的测试,主要检查软件功能是否实现了软件功能说明书(软件需求)上的功能要求。2.界面测试
10、对软件的用户界面进行的测试,主要检查用户界面的美观度、统一性、易用性等方面的内容。3.数据处理测试 对软件数据接口进行的测试,主要检查软件数据处理中输入、处理、输出数据过程。4.流程测试 按操作流程进行的测试,主要有业务流程、数据流程、逻辑流程、正反流程,检查软件在按流程操作时是否能够正确处理。第二课:测试分类第二课:测试分类测试分类划分方法测试分类划分方法:1.:1.按测试阶段按测试阶段、2.按测试类型测试类型按测试类型:1.功能测试2.界面测试3.数据处理测试4.流程测试5.压力测试6.并发测试7.安全测试8.性能测试9.安装测试 5.压力测试 在软件的极限条件下进行的测试,主要有对数据的
11、极限值、边界值操作,对软件进行致命操作等。6.并发测试 网络环境、并发环境、多用户条件下进行测试。7.安全测试 对软件安全性方面的测试,主要检测软件中加密、解密、数据备份、恢复、病毒检测,网络架构问题。8.性能测试 对软件整体性能的测试,对适应性、健壮性、可恢复性、灾难恢复能力 9.安装测试 在不同PC条件、操作系统、模拟客户机,网络环境进行安装测试.第三课:验收测试第三课:验收测试验收测试验收测试:1.验收测试任务2.验收测试内容3.验收测试标准4.配置复审5.、测试6.验收测试过程 1.验收测试任务验收测试任务:验收测试的任务:功能和性能是否符合用户需求(需求分析文档)。验收测试是向未来的
12、用户表明系统能够像预定要求工作。经集成测试后。2.2.验收测试内容验收测试内容:1.1.安装(升级)2.功能测试(正例、重要算法、边界、时序、反例、错 误处理)3.性能测试(正常的负载、容量变化)4.压力测试(临界的负载、容量变化)5.配置测试 6.平台测试 7.安全性测试、恢复测试(在出现掉电、硬件故障或切换、网络故障等情况时,系统是否能够正常运行)8.可靠性测试 第三课:验收测试第三课:验收测试验收测试验收测试:1.验收测试任务2.验收测试内容3.验收测试标准4.配置复审5.、测试6.验收测试过程 3.3.验收测试标准验收测试标准:1.软件是否符合需求所有功能和性能 2.文档资料是否完整(
13、开发类文档)需求分析说明书、概要设计说明书、详细设计说明书、数据库设计说明书、测试计划、测试报告、程序维护手册、程序员开发手册、用户操作手册、项目总结报告。3.准确人机界面4.4.配置复审配置复审:验收测试的另一个重要环节是配置复审。复审的目的在于保证软件配置齐全、分类有序,并且包括软件维护所必须的细节。第三课:验收测试第三课:验收测试验收测试验收测试:1.验收测试任务2.验收测试内容3.验收测试标准4.配置复审5.、测试6.验收测试过程 5.5.、测试测试验收测试时不可能完全预见用户实际使用程序的情况:测试是指软件开发公司组织内部人员模拟各类用户行对即将布署软件产品(称为版本)进行测试,发现
14、错误并修正。测试的关键在于尽可能逼真地模拟实际运行环境和用户对软件产品的操作并尽最大努力涵盖所有可能的用户操作方式。版本经过测试调整后产生。测试组织各方面的典型用户实际使用,并要求用户报告异常情况、提出批评意见。然后软件开发公司再对版本进行改错和完善。一般包括功能度、安全可靠性、易用性、可扩充性、兼容性、效率、资源占用率、用户文档八个方面。第三课:验收测试第三课:验收测试验收测试验收测试:1.验收测试任务2.验收测试内容3.验收测试标准4.配置复审5.、测试6.验收测试过程 6.6.验收测试过程验收测试过程 1.编制验收测试计划和项目验收准则:根据软 件需求和验收要求编制测试计划,制定需测试的
15、测试项,制定测试策略及验收通过准则,并经过客户参与的计划评审。2.测试设计和测试用例设计:根据验收测试计划和项目验收准则编制测试用例,并经过评审。3.测试环境搭建:建立测试的硬件环境、软件环境等。(可在委托客户提供的环境中进行测试)4.测试实施:测试并记录测试结果。5.测试结果分析:根据验收通过准则分析测试结果,作 出验收是否通过及测试评价。6.测试报告:根据测试结果编制缺陷报告和验收测试报告,并提交给客户。第四课:系统测试第四课:系统测试系统测试系统测试:1.系统测试目的2.系统测试对象3.系统测试步骤 1.1.系统测试的目的系统测试的目的 系统测试是将已经确认的软件、计算机硬件、外设、网络
16、等其他元素结合在一起,进行信息系统的各种组装测试和确认测试,其目的是通过与系统的需求相比较,发现所开发的系统与用户需求不符或矛盾的地方,从而提出更加完善的方案。2.系统测试对象系统测试对象 系统测试的对象不仅仅包括需要测试的产品系统的软件,还要包含软件所依赖的硬件、外设甚至包括某些数据、某些支持软件及其接口等。因此,必须将系统中的软件与各种依赖的资源结合起来,在系统实际运行环境下来进行测试3.3.系统测试步骤分为三个步骤:系统测试步骤分为三个步骤:1.模块测试,测试每个模块的程序是否有错误 2.组装测试,测试模块之间的接口是否正确;3.确认测试,测试整个软件系统是否满足用户功能和性 能的要求。
17、第五课:集成测试第五课:集成测试集成测试集成测试:1.集成测试定义2.集成测试目的3.集成测试标准4.集成测试方法 1.集成测试的定义集成测试的定义 集成测试是单元测试的逻辑扩展。集成是指多个单元的聚合,许多单元组合成模块,而这些模块又聚合成程序的更大部分,如分系统或系统。集成测试采用的方法是测试软件单元的组合能否正常工作,以及与其他组的模块能否集成起来工作。测试构成系统的所有模块组合能否正常工作。集成测试所持的主要标准是软件概要设计规格说明,任何不符合该说明的程序模块都应该加以记载并上报。2.集成测试的目的集成测试的目的 集成测试的目的是确保各单元组合在一起后能够按既定意图协作运行,并确保增
18、量的行为正确。它所测试的内容包括单元间的接口以及集成后的功能。使用黑盒测试方法测试集成的功能。并且对以前的集成进行回归测试。第五课:集成测试第五课:集成测试集成测试集成测试:1.集成测试定义2.集成测试目的3.集成测试标准4.集成测试方法 3.集成测试的标准集成测试的标准 集成测试应由专门的测试小组来进行(测试人员,开发人员,设计人员),整个测试活动在评审人员出席的情况下进行。在完成预定的组装测试工作之后,测试小组应负责对测试结果进行整理、分析,形成测试报告。测试报告中要记录实际的测试结果、在测试中发现的问题、解决这些问题的方法以及解决之后再次测试的结果。此外还应提出目前不能解决、还需要管理人
19、员和开发人员注意的一些问题,提供测试评审和最终决策,以提出处理意见。检测标准:1、成功地执行了测试计划中规定的所有集成测试;2、修正了所发现的错误;3、测试结果通过了专门小组的评审。第五课:集成测试第五课:集成测试集成测试集成测试:1.集成测试定义2.集成测试目的3.集成测试标准4.集成测试方法 集成测试方法集成测试方法集成测试主要有两种方法:1.非渐增式测试方法2.渐增式测试方法。非渐增式测试方法 先分别测试每个模块,再把所有模块按设计要求放在一起结合成所要的程序。渐增式测试方法 把下一个要测试的模块同已经测试好的模块结合起来进行测试,测试完以后再把下一个应该测试的模块结合进来测试。第五课:
20、集成测试第五课:集成测试集成测试集成测试:1.集成测试定义2.集成测试目的3.集成测试标准4.集成测试方法 非渐增式与渐增式两种测试方法的比较:1.非渐增式测试方法需要编写的测试用例较多,工作量较大;渐增式测试方法开销小。2.渐增式测试方法发现模块间接口错误早;而非渐增式测试方法晚。3.非渐增式测试方法发现错误,较难诊断;而使用渐增式测试方法,如果发生错误则往往和最近加进来的那个模块有关。4.渐增式测试方法测试更彻底5.渐增式测试方法需要较多的机器时间6.使用非渐增式测试方法,可以并行测试。第五课:集成测试第五课:集成测试集成测试集成测试:1.集成测试定义2.集成测试目的3.集成测试标准4.集
21、成测试方法 渐增式测试:自顶向下和自底向上两种方法。渐增式测试:自顶向下和自底向上两种方法。1.1.自顶向下集成 从主控模块(“主程序”)开始,沿着软件的控制层次向下移动,从而逐渐把各个模块结合起来。在组装过程中,可以使用深度优先的策略,或宽度优先的策略。M1M2M3S4M5M6M8S7图例图例3:自顶向下集成:自顶向下集成深度优先:M1-M2-M5-M8-M6-M3-S7-S4宽度优先:M1-M2-M3-S4-M5-M6-S7-M8第五课:集成测试第五课:集成测试集成测试集成测试:1.集成测试定义2.集成测试目的3.集成测试标准4.集成测试方法 渐增式测试方法渐增式测试方法:自顶向下和自底向
22、上两种方法。自顶向下和自底向上两种方法。1.1.自顶向下集成实施步骤自顶向下集成实施步骤:(1)对主控模块进行测试,测试时用存根程序代替所有直接附属于主控模块的模块。(2)根据选定的结合策略(深度优先或宽度优先),每次用一个实际模块代替一个存根程序(新结合进来的模块往往又需要新的存根程序)(3)在结合下一个模块的同时进行测试(4)为了保证加入模块没有引进新的错误,可能需要进行回归测试(即,全部或部分地重复以前做过的测试)。从第2步开始不断地重复进行上述过程,直至完成。第五课:集成测试第五课:集成测试集成测试集成测试:1.集成测试定义2.集成测试目的3.集成测试标准4.集成测试方法 渐增式测试:
23、自顶向下和自底向上两种方法。渐增式测试:自顶向下和自底向上两种方法。2.2.自底向上集成自底向上集成:自底向上测试是从“原子”模块(即软件结构最低层的模块)开始组装测试,因测试到较高层模块时,所需的下层模块功能均已具备。McMaMbD2D1D3族2族3族1图例图例4:自底向上集成:自底向上集成第五课:集成测试第五课:集成测试集成测试集成测试:1.集成测试定义2.集成测试目的3.集成测试标准4.集成测试方法 渐增式测试:自顶向下和自底向上两种方法。渐增式测试:自顶向下和自底向上两种方法。2.2.自底向上集成步骤自底向上集成步骤:1 把低层模块组织成实现某个子功能的模块(cluster);2 测试
24、驱动模块控制测试数据的输入和测试结果的输出;3 对每个模块群进行测试;4 删除测试使用的驱动模块,用较高层模块把模块群组织成为完成更大功能的新模块群。从第一步开始循环执行上述步骤,直至整个程序构造完毕。第五课:集成测试第五课:集成测试集成测试集成测试:1.集成测试定义2.集成测试目的3.集成测试标准4.集成测试方法 两种集成策略比较:“自顶向下”法的主要优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能在早期发现上层模块的接口错误。“自顶向下”法的主要缺点:需要存根程序,可能遇到与此相联系的测试困难,低层关键模块中的错误发现较晚,而且用这种方法在早期不能充分展开人力
25、。第六课:单元测试第六课:单元测试单元测试单元测试:1.单元测试定义2.单元测试内容3.单元测试过程 单元测试定义单元测试定义:单元测试是在软件开发过程中要进行的最低级别的测试活动,在单元测试活动中,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。第六课:单元测试第六课:单元测试单元测试单元测试:1.单元测试定义2.单元测试内容3.单元测试过程 单元测试内容单元测试内容:1.1.模块测试项目:模块测试项目:1.模块接口 2.局部数据结构 3.重要的执行通路 4.出错处理通路 5.影响上述各方面特性的边界条件2.2.输入输入/输出的测试要点输出的测试要点1.参数数目和由调用模块送来的变
展开阅读全文