这里没有软件测试的泛泛理论,只有博主的最佳实践。
博主的研究方向为静态分析和性能测试,致力于各种测试工具的引入、评估和开发。
本博的测试文章均为作者原创,转载请务必注明出处。
我看“静态测试”
上一篇 /
下一篇 2008-01-16 17:12:38
/ 个人分类:静态分析
在开始我的文章之前,先引用一段关于静态测试的文字
nt-R8|/M?0 http://bbs.51testing.com/thread-262-1-7.html51Testing软件测试网l]};\O5k/\&|Id
我猜想,引用的文字应该是教科书式的定义,简单总结,静态测试主要是对各种软件文档进行测试。
#w$Ff
~"zf\0以下是我的观点。不求描述的太详细,简单点明我的思路即可。
6x;?OHD)KG0静态测试,其定义为Testing of an object without execution on a computer.,就是说不需要在计算机上执行程序的测试,测试对象是软件的静态属性。软件包括程序+文档,但软件开发过程中的文档不应该是静态测试的对象,参考CMM的要求,可以明确:
9JPD9sP,RkM0l 软件开发文档应该是由各种角色的人员来评审的,而不是进行测试的。
Y['d-s3zL0l 软件测试概念中的“文档测试”的对象应该是随软件交付的文档,例如online help、reference manual等,而不是软件的开发文档。文档测试也应该是系统测试中的一个环节。51Testing软件测试网*pq8|hUM ]e
所以我的观点是,静态测试的对象主要是程序代码,过程主要是在单元测试和集成测试阶段。插一句,其实在测试的概念方面,国人和老外还是有一些细微的差别。老外口中的测试(test/testing)一般指的是动态测试,例如功能测试、性能测试等。我们说的静态测试,其实更接近老外眼中的static analyse(静态分析)。那么如何实施静态测试呢?51Testing软件测试网YLd/A;w@
1编码规范检查——一切的基础
一个项目或者一个企业,如果要下决心实施软件质量,实施软件工程,第一步要做的就是软件编码规范。
/V/B)^$MV@0 编码规范是程序编写过程中必须遵循的规则,一般会详细规定代码的语法规则、语法格式等。企业实施怎样的编码规范,取决于很多个因素:51Testing软件测试网;]!PUY/Kd*J)~
l 编程采用的语言,例如C、C++、JAVA、ADA等
%X-vd\B*Q0l 项目的规范化程度。目前现成的C/C++编码规范有很多,例如前几年网络上比较流行的《华为公司编程规范》、《摩托罗拉C+编程规范》等。但项目不能完全照搬,应该根据自己所处的阶段,定制属于自己的规范,否则的话,会让程序员无所适从,严重打击程序员的积极性。