《软件测试理论知识精品文稿.ppt》由会员分享,可在线阅读,更多相关《软件测试理论知识精品文稿.ppt(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、软件测试理论知识第1页,本讲稿共11页2测试基础静态测试o静态测试该方法的主要特征是在用计算机测试源程序时,计算机并不真正运行被测试的程序,只对被测对象(设计或代码)进行特性分析。因此,静态测试常称为“分析”,静态分析是对被测对象进行特性分析的一些方法的总称。静态测试的目的尽早发现软件缺陷为黒盒测试员设计测试用例提供思路第2页,本讲稿共11页3静态测试o静态测试静态测试主要是对代码进行检查。可由人工进行,也可借助软件工具自动进行。可以做静态分析的工具很多,出名的有LOGICSCOPE,C+TEST,LDRATESTBED,PRQAC/C+,MACABEIQ,以及Rational的Purify、
2、Quantify和PureCoverage等第3页,本讲稿共11页静态测试o代码检查包括桌面检查、代码审查、代码走查等。主要检查代码和设计的一致性,代码对标准的遵循、可读性,代码的逻辑表达的正确性,代码结构的合理性等方面;以期发现违背编程标准或编程风格问题,程序中不安全、不明确和模糊部分,程序中不可移植部分等。代码检查看到的是问题本身而非征兆。但是代码检查非常耗时,且代码检查需要知识和经验的积累。代码检查应在编译和动态测试前进行,在检查前,应准备好需求描述文档、程序设计文档、程序的源代码清单、代码编码标准和代码缺陷检查表等。4第4页,本讲稿共11页5静态测试桌面检查(DeskChecking)
3、由程序员自己检查自己编写的程序。程序员在程序通过编译后,进行单元测试设计前,对源代码进行分析,检验,并补充相关的文档,目的是发现程序中的错误。检查项目有:n检查变量的交叉引用表:重点是检查未说明的变量和违反了类型规定的变量;还要对照源程序,逐个检查变量的引用、变量的使用序列;临时变量在某条路径上的重写情况;局部变量、全局变量与特权变量的使用;n检查标号的交叉引用表:验证所有标号的正确性:检查所有标号的命名是否正确;转向指定位置的标号是否正确。n检查子程序、宏、函数:验证每次调用与被调用位置是否正确;确认每次被调用的子程序、宏、函数是否存在;检验调用序列中调用方式与参数顺序、个数、类型上的一致性
4、。第5页,本讲稿共11页6静态测试n等值性检查:检查全部等价变量类型的一致性,解释所包含的类型差异。n常量检查:确认每个常量的取值和数制、数据类型;检查常量每次引用同它的取值、数制和类型的一致性;n标准检查:用标准检查程序或手工检查程序中违反标准的问题。n比较控制流:比较由程序员设计的控制流图和由实际程序生成的控制流图,寻找和解释每个差异,修改文档和校正错误。n选择、激活路径:在程序员设计的控制流图上选择路径,再到实际的控制流图上激活这条路径。如果选择的路径在实际控制流图上不能激活,则源程序可能有错。用这种方法激活的路径集合应保证源程序模块的每行代码都被检查,即桌前检查应至少是语句覆盖。第6页
5、,本讲稿共11页7静态测试n风格检查:检查在程序设计风格方面发现的问题。n对照程序的规格说明,详细阅读源代码:程序员对照程序的规格说明书、规定的算法和程序设计语言的语法规则,仔细地阅读源代码,逐字逐句进行分析和思考,比较实际的代码和期望的代码,从它们的差异中发现程序的问题和错误。n补充文档:桌前检查的文档是一种过渡性的文档,不是公开的正式文档。通过编写文档,也是对程序的一种下意识的检查和测试,可以帮助程序员发现和抓住更多的错误。这种桌前检查,由于程序员熟悉自己的程序和自身的程序设计风格,可以节省很多的检查时间,但应避免主观片面性。第7页,本讲稿共11页8静态测试代码审查(CodeReading
6、Review)代码审查是由若干程序员和测试员组成一个会审小组,通过阅读、讨论和争议,对程序进行静态分析的过程。代码审查分两步:第一步,小组负责人提前把设计规格说明书、控制流程图、程序文本及有关要求、规范等分发给小组成员,作为评审的依据。小组成员在充分阅读这些材料之后,进入审查的第二步。第二步:召开程序审查会。在会上,首先由程序员逐句讲解程序的逻辑。在此过程中,程序员或其他小组成员可以提出问题,展开讨论,审查错误是否存在。实践表明,程序员在讲解过程中能发现许多原来自己没有发现的错误,而讨论和争议则促进了问题的暴露。第8页,本讲稿共11页9静态测试在会前,应当给会审小组每个成员准备一份常见错误的清
7、单,把以往所有可能发生的常见错误罗列出来,供与会者对照检查,以提高会审的实效。这个常见错误清单也叫做检查表,它把程序中可能发生的各种错误进行分类,对每一类列举出尽可能多的典型错误,然后把它们制成表格,供在会审时使用。下面列出了代码检查应查找的问题第9页,本讲稿共11页10静态测试1.源代码格式:是否符合编程标准或规范?2.程序语句的使用3.数据引用错误4.数据声明错误5.计算错误6.比较错误7.接口错误8.控制流程错误9.输入输出错误10.逻辑和性能11.维护性和可靠性第10页,本讲稿共11页11静态测试走查(Walkthroughs)走查与代码会审基本相同,其过程分为两步。第一步也把材料先发给走查小组每个成员,让他们认真研究程序,然后再开会。开会的程序与代码会审不同,不是简单地读程序和对照错误检查表进行检查,而是让与会者“充当”计算机。即首先由测试组成员为被测程序准备一批有代表性的测试用例,提交给走查小组。走查小组开会,集体扮演计算机角色,让测试用例沿程序的逻辑运行一遍,随时记录程序的踪迹,供分析和讨论用。第二步人们借助于测试用例的媒介作用,对程序的逻辑和功能提出各种疑问,结合问题开展热烈的讨论和争议,能够发现更多的问题。走查时注意时限(避免跑题,不针对某问题无休止讨论)和避免现场修改。第11页,本讲稿共11页