资源预览内容
第1页 / 共39页
第2页 / 共39页
第3页 / 共39页
第4页 / 共39页
第5页 / 共39页
第6页 / 共39页
第7页 / 共39页
第8页 / 共39页
第9页 / 共39页
第10页 / 共39页
亲,该文档总共39页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
软件测试分类软件测试分类黑盒和白盒测试黑盒和白盒测试静态测试和动态测试静态测试和动态测试测试不同阶段测试不同阶段测试各种分类间关系测试各种分类间关系1软件测试的分类软件测试的分类对于软件测试,可以从不同的角度加以分类: 基于是否关注软件结构与算法基于是否关注软件结构与算法 黑盒测试黑盒测试白盒测试白盒测试基于是否执行被测试软件基于是否执行被测试软件静态测试静态测试动态测试动态测试基于测试的不同阶段基于测试的不同阶段单元测试单元测试集成测试集成测试系统测试系统测试验收测试验收测试2软件测试的内容 回归测试回归测试功能测试功能测试负载测试负载测试 压力测试压力测试性能测试性能测试 易用性测试易用性测试 安装与反安装测试安装与反安装测试3软件测试的内容 恢复测试恢复测试安全性测试安全性测试兼容性测试兼容性测试内存泄露测试内存泄露测试比较测试比较测试Alpha 测试测试Beta测试测试4黑盒测试和白盒测试黑盒测试和白盒测试黑盒测试黑盒测试白盒测试白盒测试两种测试方法从不同的角度出两种测试方法从不同的角度出发,反映了软件的不同侧面,也发,反映了软件的不同侧面,也适用于不同的开发环境适用于不同的开发环境5输入输入输入输入输出输出输出输出黑盒测试又称黑盒测试又称功能测试功能测试、数据驱动测试或、数据驱动测试或基于规格说明的测试,也可被成为用户测基于规格说明的测试,也可被成为用户测试,主要应用于快速应用开发(试,主要应用于快速应用开发(RADRAD)环境)环境6黑盒测试黑盒测试黑盒测试法把程序看成一个黑盒子,完黑盒测试法把程序看成一个黑盒子,完全不考虑程序内部结构和处理过程。全不考虑程序内部结构和处理过程。黑盒测试是在程序接口进行测试,它只黑盒测试是在程序接口进行测试,它只是检查程序功能是否按照规格说明书的是检查程序功能是否按照规格说明书的规定正常使用。规定正常使用。黑盒测试又称功能测试。黑盒测试又称功能测试。7 黑盒测试黑盒测试被测程序需求说明测试结果产生测试用例输出比较8 黑盒测试黑盒测试典型黑盒测试方法典型黑盒测试方法 等价类划分等价类划分 因果图因果图 边界值分析边界值分析 9 黑盒测试黑盒测试黑盒主要是为了发现以下几类错误:黑盒主要是为了发现以下几类错误:是否有不正确或遗漏了的功能?是否有不正确或遗漏了的功能?在接口上,输入能否正确地接受?能否输出在接口上,输入能否正确地接受?能否输出正确的结果?正确的结果?是否有数据结构错误或外部信息(例如数据是否有数据结构错误或外部信息(例如数据文件)访问错误?文件)访问错误?性能上是否能够满足要求?性能上是否能够满足要求?是否有初始化或终止性错误?是否有初始化或终止性错误?10白盒测试又称白盒测试又称结构测试结构测试、逻辑驱动测试或基、逻辑驱动测试或基于程序本身的测试,也可成为于程序本身的测试,也可成为程序员测试程序员测试,主要应用于结构化开发环境主要应用于结构化开发环境应用程序应用程序11白盒测试白盒测试白盒测试的前提是可以把程序看成装在白盒测试的前提是可以把程序看成装在一个透明的白盒子里,也就是完全了解一个透明的白盒子里,也就是完全了解程序结构和处理过程。程序结构和处理过程。白盒测试按照程序内部逻辑测试程序,白盒测试按照程序内部逻辑测试程序,检验程序中每条通路是否按预定要求正检验程序中每条通路是否按预定要求正确工作。确工作。白盒测试又称结构测试。白盒测试又称结构测试。12白盒测试白盒测试测试用例被测程序源程序分析覆盖情况分析执行路径13白盒测试白盒测试典型白盒测试方法典型白盒测试方法静态分析静态分析动态测试动态测试14 白盒测试白盒测试使用白盒测试方法,主要想对程序模块使用白盒测试方法,主要想对程序模块进行如下的检查:进行如下的检查:对程序模块的所有独立的执行路径至少测试对程序模块的所有独立的执行路径至少测试一次。一次。对所有的逻辑判定,取对所有的逻辑判定,取“真真”与取与取“假假”的的两种情况都能至少测试一次。两种情况都能至少测试一次。在循环的边界和运行界限内执行循环体。在循环的边界和运行界限内执行循环体。测试内部数据结构的有效性等。测试内部数据结构的有效性等。15 白盒测试与黑盒测试的比较白盒测试与黑盒测试的比较白盒测试白盒测试黑盒测试黑盒测试测试依据测试依据程序内部结构程序内部结构规格说明规格说明优点优点能够对程序内部能够对程序内部的特定部位进行的特定部位进行覆盖测试覆盖测试能站在用户立场能站在用户立场上进行测试上进行测试缺点缺点无法检验程序的无法检验程序的外特性外特性无法对未实现规无法对未实现规格说明的程序内格说明的程序内部欠缺部分进行部欠缺部分进行测试测试不能测试程序内不能测试程序内部特定部位部特定部位如果规格说明有如果规格说明有误,则无法发现误,则无法发现16白盒测试与黑盒测试的比较白盒测试与黑盒测试的比较黑盒测试与白盒测试能够发现的错误 17静态测试和动态测试静态测试和动态测试静态测试不执行被测试的软件。类似于汽车检查。静态测试不执行被测试的软件。类似于汽车检查。静态测试不执行被测试的软件。类似于汽车检查。静态测试不执行被测试的软件。类似于汽车检查。18动态测试是在测试过程中执行被测试软件,类似于试车。动态测试是在测试过程中执行被测试软件,类似于试车。动态测试是在测试过程中执行被测试软件,类似于试车。动态测试是在测试过程中执行被测试软件,类似于试车。19测试的过程测试的过程集成集成测试测试确认确认测试测试系统系统测试测试单元测试被测模块已集成的软件已确认的软件可交付的软件测试通过的模块设计信息软件需求系统其它元素单元测试被测模块单元测试被测模块验收验收测试测试用户核心流程20测试不同阶段测试不同阶段按测试阶段分类,测试可分按测试阶段分类,测试可分4个主要阶段:个主要阶段:单元测试、集成测试、系统测试和验收测单元测试、集成测试、系统测试和验收测试。试。这是一种从小到大、循序渐进的测试过程。这是一种从小到大、循序渐进的测试过程。单元测试是对程序员编写完成的一个个程单元测试是对程序员编写完成的一个个程序单元进行测试。序单元进行测试。21单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元通常不是可运行的程序。单元通常不是可运行的程序。单元测试必须编写额外的可运行的测试驱动程序。单元测试必须编写额外的可运行的测试驱动程序。 22单元测试单元测试单元测试又称为模块测试,是针对程序单元测试又称为模块测试,是针对程序模块(软件设计的最小单位)来进行正模块(软件设计的最小单位)来进行正确性检验的测试工作。确性检验的测试工作。软件单元测试的目的是检测程序模块对软件单元测试的目的是检测程序模块对详细设计说明书详细设计说明书的符合程度;软件的符合程度;软件单元测试依据是单元测试依据是单元测试计划单元测试计划。23 单元测试单元测试软件单元测试由测试工程师编制测试用软件单元测试由测试工程师编制测试用例进行测试,及针对程序模块进行多次例进行测试,及针对程序模块进行多次循环反复的单元测试,并将测试结果记循环反复的单元测试,并将测试结果记录在针对单元测试的录在针对单元测试的软件测试报告软件测试报告上。上。若程序模块通过单元测试,则按若程序模块通过单元测试,则按配置配置管理规范管理规范所规定的标识方法进行标识。所规定的标识方法进行标识。24单元测试设计单元测试设计测试模型测试模型驱动模块:相当于所测模块的主程序。驱动模块:相当于所测模块的主程序。桩模块:也叫做存根模块。用以代替所测模桩模块:也叫做存根模块。用以代替所测模块调用的子模块。块调用的子模块。测试用例测试用例驱动模块桩模块桩模块2被测模块被测模块测试结果测试结果桩模块桩模块1桩模块桩模块n25 单元测试设计单元测试设计考虑方面考虑方面模块接口测试模块接口测试局部数据测试局部数据测试独立路径测试独立路径测试出错处理测试出错处理测试边界条件测试边界条件测试模块接口独立路径边界条件局部数据模块模块出错处理26单元测试设计单元测试设计原则原则为模块正常运行设计为模块正常运行设计为正向测试设计为正向测试设计为逆向测试设计为逆向测试设计为满足特殊需求设计为满足特殊需求设计为代码覆盖设计为代码覆盖设计27 单元测试执行单元测试执行检查编码是否遵循软件编程规范和标准。检查编码是否遵循软件编程规范和标准。自动或手动分析程序。自动或手动分析程序。设计测试用例并运行。设计测试用例并运行。错误跟踪分析。错误跟踪分析。28 单元测试完成单元测试完成单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试29集成测试集成测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试单元测试集集 成成 测测 试试30集成测试有渐增式和非渐增式两种方式集成测试有渐增式和非渐增式两种方式渐增式的集成中可以采用两种:渐增式的集成中可以采用两种:“自顶向自顶向下下”和和“自底向上自底向上”。 集成测试中,会混合使用白盒测试和黑盒集成测试中,会混合使用白盒测试和黑盒测试方法。测试方法。 集成测试可以发现模块间接口以及全局数集成测试可以发现模块间接口以及全局数据结构等问题。据结构等问题。31系统测试系统测试系统测试系统测试32系统测试的目的是检查系统是否符合软件系统测试的目的是检查系统是否符合软件需求需求系统测试采用黑盒测试方式系统测试采用黑盒测试方式系统测试的主要内容有:功能测试、健壮系统测试的主要内容有:功能测试、健壮性测试、性能效率测试、用户界面测试、性测试、性能效率测试、用户界面测试、安全性测试、压力测试、可靠性测试、安安全性测试、压力测试、可靠性测试、安装装/反安装测试等。反安装测试等。 为了保证测试的客观性,一般由机构的为了保证测试的客观性,一般由机构的独立测试小组来执行系统测试。独立测试小组来执行系统测试。33验收测试验收测试验收测试是由用户完成的测试验收测试是由用户完成的测试验收测试的内容与系统测试的内容类似验收测试的内容与系统测试的内容类似验收测试可以分成验收测试可以分成Alpha测试和测试和Beta测试。测试。 34系统维护系统维护二次开发二次开发项目更新项目更新单元测试单元测试单元测试单元测试集成测试集成测试集成测试集成测试系统测试系统测试系统测试系统测试验收测试验收测试验收测试验收测试回归测试回归测试35 回归测试回归测试回归测试的范围回归测试的范围测试全部用例测试全部用例问题修改后的检验问题修改后的检验测试高风险模块测试高风险模块/系统系统基于操作剖面选择测试基于操作剖面选择测试36 回归测试回归测试回归测试的基本过程回归测试的基本过程识别出软件中被修改的部分识别出软件中被修改的部分从原基线测试用例库从原基线测试用例库T中,排除所有不再适中,排除所有不再适用的测试用例,确定那些对新的软件版本依用的测试用例,确定那些对新的软件版本依然有效的测试用例,其结果是建立一个新的然有效的测试用例,其结果是建立一个新的基线测试用例库基线测试用例库T0依据一定的策略从依据一定的策略从T0中选择测试用例测试被中选择测试用例测试被修改的软件修改的软件37 回归测试回归测试回归测试的基本过程回归测试的基本过程如果必要,生成新的测试用例集如果必要,生成新的测试用例集T1,用于测,用于测试试T0无法充分测试的软件部分无法充分测试的软件部分用用T1执行修改后的软件执行修改后的软件第第2和第和第3步测试验证修改是否破坏了现有步测试验证修改是否破坏了现有的功能,第的功能,第4和第和第5步测试验证修改工作本步测试验证修改工作本身身38测试各种分类间关系测试各种分类间关系39
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号