欢迎来到天天文库
浏览记录
ID:59194013
大小:113.50 KB
页数:35页
时间:2020-09-26
《第 5 章 软件测试分类ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、5.1分类5.2静态测试5.3动态测试第5章软件测试技术分类5.1分类从不同的角度,可以把软件测试技术分成不同种类,如:一、从是否需要执行被测软件的角度,可分为静态测试和动态测试。那些不利用计算运行被测程序,而是通过其他手段达到测试目的的方法称作静态测试。常用的有以下几种:①代码检查②代码走查③桌面检查④同行评分后面我们将要介绍的黑盒测试和白盒测试就属于动态测试。二、从软件测试用例设计方法的角度,可分为黑盒测试(Black-BoxTesting)和白盒测试(White-BoxTesting)。三、按照软件测试的策略和过程分类,软件测试可分为单
2、元测试(UnitTesting)、集成测试(IntegrationTesting)、确认测试(ValidationTesting)、系统测试(SystemTesting)和验收测试(VerificationTesting)。5.2静态测试5.2.1源程序静态分析在静态结构分析中,测试者通过使用测试工具分析程序源代码的系统结构、数据结构、数据接口、内部控制逻辑等内部结构,生成函数调用关系图、模块控制流图、内部文件调用关系图、子程序表、宏和函数参数表等各类图形图表,可以清晰地标识整个软件系统的组成结构,使其便于阅读与理解,然后可以通过分析这些图表
3、,检查软件有没有存在缺陷或错误。通常采用以下一些方法进行源程序的静态分析。(1)生成各种引用表①标号交叉引用表②变量交叉引用表③子程序(宏、函数)引用表④等价表⑤常数表(2)错误静态分析错误静态分析主要用于确定在源程序中是否有某类错误或“危险”结构。①类型和单位分析②引用分析③表达式分析④接口分析5.2.2人工测试静态分析中进行人工测试的主要方法有桌前检查、代码审查和走查。经验表明,使用这种方法能够有效地发现30%~70%的逻辑设计和编码错误。由程序员自己检查自己编写的程序。程序员在程序通过编译之后,进行单元测试设计之前,对源程序代码进行分析
4、、检验,并补充相关的文档,目的是发现程序中的错误。(1)桌前检查代码审查是由若干程序员和测试员组成一个审查小组,通过阅读、讨论和争议,对程序进行静态分析的过程。代码审查分两步。第一步,小组负责人提前把设计规格说明书、控制流程图、程序文本及有关要求、规范等分发给小组成员,作为审查的依据。小组成员在充分阅读这些材料后,进入审查的第二步,召开程序审查会。(2)代码审查走查与代码审查基本相同,其过程分为两步。第一步也把材料先发给走查小组每个成员,让他们认真研究程序,然后再开会。开会的程序与代码审查不同,不是简单地读程序和对照错误检查表进行检查,而是让
5、与会者“充当”计算机,即首先由测试组成员为被测程序准备一批有代表性的测试用例,提交给走查小组。走查小组开会,集体扮演计算机角色,让测试用例沿程序的逻辑运行一遍,随时记录程序的踪迹,供分析和讨论用。(3)走查5.3.动态测试软件测试的种类大致可分为人工测试和基于计算机的测试。人工测试前面已经介绍,属于静态测试。而基于计算机的测试属于动态测试,又可分为黑盒测试和白盒测试。5.3.1.白盒测试5.3.1.1什么是白盒测试白盒测试是根据软件产品的内部工作过程,在计算机上进行测试,以证实每种内部操作是否符合设计规格要求,所有内部成分是否已经过检查。白盒
6、测试把测试对象看做一个打开的盒子,允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。这就是说,白盒测试是一种可视的测试软件的方法,即它把测试对象看作一个透明的盒子,测试人员要了解程序结构和处理过程,按照程序内部逻辑测试程序,检查程序中的每条通路是否按照预定要求正确工作。白盒测试的过程如图5-1所示:图5-1白盒测试过程示意图5.3.1.2白盒测试与调试的异同白盒测试和调试有哪些不同点呢?1、从承担的任务来看,白盒测试同其他类型测试一样,
7、它的任务是发现所开发的项目中的缺陷;但是,调试不属于测试,其任务是纠正软件中的缺陷。2、从最终的结果来看,白盒测试有预知的结果,不可预知的只是程序是否通过测试,并且成功测试的结果是发现错误的症状,从而引起调试的进行;而调试的结果是消除项目中的错误。3、从执行的过程来看,测试是一个发现错误、改正错误、重新测试的过程;而调试是一个推理过程。4、从准备工作来看,测试从已知的条件开始,使用预先定义的程序;调试一般是以不可知的内部条件开始,做统一性调试。5、从执行的计划性来看,测试是有计划的并要进行测试设计;而调试则不受时间约束。6、从执行的人员来看,
8、测试经常是由独立的测试组在不了解软件设计的条件下完成的,而调试必须由程序员来完成。7、从所使用的工具来看,大多数白盒测试的执行和设计可有工具支持,而调试程序员能利用
此文档下载收益归作者所有