首页 > 代码库 > 软件测试的几个基本原则
软件测试的几个基本原则
我一直认为软件测试是一件很有原则的工作,这个原则是最重要的,方法都应该在原则指导下进行。软件测试的基本原则是站在用户
的角度,对产品进行全面测试,尽早、尽可能多地发现 Bug,并负责跟踪和分析产品中的问
题,对不足之处提出质疑和改进意见。
软件零缺陷(Zero-Bug) 是一种理念,足够好(Good-Enough)是测试的基本原则。为了达到这个足够好,在软
件测试过程中,应注意和遵循的一些基本原则,可以概括为以下几项,我认为适合绝大多数的软件测试工作了。
1. 所有测试的标准都是建立在用户需求之上。正如我们所知,软件测试的目标就是验
证产品的一致性和确认产品是否满足客户的需求,所以测试人员要始终站在用户的
角度去看问题、去判断软件缺陷的影响,系统中最严重的错误是那些,导致程序无法
满足用户需求的缺陷有那些。
2. 软件测试必须基于 “ 质量第一 ” 的思想去开展各项工作,当时间和质量冲突时,时
间要服从质量。强烈质量的意识、理念和文化(如零缺陷、足够好的目标)同样是
软件测试工作的基础。
3. 事先定义好产品的质量标准。有了质量标准,才能依据测试的结果对产品的质量进
行正确的分析和评估,例如,进行性能测试前,应定义好产品性能的相关的各种指
标。同样,功能及其它测试也应该事先定义好标准,包括测试用例应确定预期输出结果,如果无法确定测试结果,则无法进行校
验。
4. 软件项目一启动,软件测试也就是开始,而不是等程序写完,才开始进行测试。这个观念现在越来越受重视了,在
代码完成之前,测试人员要参与需求分析、系统或程序设计的审查工作,而且要准
备测试计划、测试用例、测试脚本和测试环境,测试计划可以在需求模型一完成就
开始,详细的测试用例定义可以在设计模型被确定后开始。应当把“尽早和不断地
测试”作为测试人员的座右铭。
5. 穷举测试是不可能的。甚至一个大小适度的程序,其路径排列的数量也非常大,因
此,在测试中不可能运行路径的每一种组合,然而,充分覆盖程序逻辑,包括业务逻辑、数据流程逻辑等,并确保程
序设计中使用的所有条件是有可能的。
6. 第三方进行测试会更客观,更有效。程序员应避免测试自己的程序,为达到最佳的
效果,应由第三方来进行测试。测试是带有 ”挑剔性” 的行为,心理状态是测试
自己程序的障碍。同时对于需求规格说明的理解产生的错误也很难在程序员本人测
试时被发现。 要做出“经得起考验和测试的产品”。
7. 软件测试计划是做好软件测试工作的前提。所以在进行实际测试之前,应制定良好
的、切实可行的测试计划并严格执行,特别要确定测试策略和测试目标。 有效的测试策略和明确的测试目标。
8. 测试用例是设计出来的,不是写出来的,所以要根据测试的目的,采用相应的方法
去设计测试用例,从而提高测试的效率,更多地发现错误,提高程序的可靠性。除
了检查程序是否做了应该做的事,还要看程序是否做了不该做的事;不仅应选用合
理的输入数据,对于非法的输入也要设计测试用例进行测试。 要知道好的测试用例真的会有效且事半功倍。
9. 不可将测试用例置之度外,排除随意性。特别是对于做了修改之后的程序进行重新
测试时,如不严格执行测试用例,将有可能忽略由修改错误而引起的大量的新错误。
所以,回归测试的关联性也应引起充分的注意,有相当一部分最终发现的错误是在
早期测试结果中遗漏的。 其它所有工作都应该避免随意性。
10. 对发现错误较多的程序段,应进行更深入的测试。一般来说,一段程序中已发现的
错误数越多,其中存在的错误概率也就越大。越需要深入和多次测试。
在实际的测试中时刻牵记这些基本原则,不仅会让工作更充分,而且会让工作越来越轻松,关键是有效果。所以让我们做有“原则性”的测试工作吧!
软件测试的几个基本原则