长期以来,人们往往认为只有动态的执行软件,无论是部分的还是整体的,才叫做软件测试。正如同人们往往错误的将QA部门作为测试部门看待一样,这种看法有其局限性。当然,我们可以在此将此类测试归为狭义的软件测试范畴。
然而,软件测试是包括静态测试在内的各种测试的总称。软件审查(Inspection)技术便是最为主要的静态测试手段。其中,由可以分为FTR ( Formal Technique Review ),walkthrough 和 peer review。详情可参见http://beyondtest.objectis.net/hawkwang/interesting_field/index_FTR。
这样,我们可以将包括软件静态和动态测试在内的所有活动视为广义的软件测试。
对于软件测试和软件质量保证(SQA)的区别,我们可以简单的区分如下:
- 软件测试是一种质量控制手段,其对象是软件产品及开发过程中的“工件”。
- 软件质量保证是保证软件开发过程的质量,以最终达到保证软件产品质量的目的。