软件测试方法的目的包括:发现软件程序中的错误、对软件是否符合
设计要求,以及是否符合合同中所要达到的技术要求,进行有关验证以及评估软件的质量。————终实现将高质量的软件系统交给用户的目的。而软件的基本测试方法主要有静态测试和动态测试、功能测试、性能测试、黑盒测试和白盒测试等等。
软件测试方法众多,比较常用到的测试方法有
等价类划分、场景法,偶尔会使用到的测试方法有边界值和判定表,还有包括不经常使用到的正交排列法和测试大纲法。其中等价类划分、边界值分析、判定表等属于黑盒测试方法;只对功能是否可以满足规定要求进行检查,主要用于软件的确认测试阶段。白盒测试也叫做结构测试或
逻辑驱动测试,是基于覆盖的全部代码和路径、条件的测试,通过测试检测产品内部性能,检验程序中的路径是否可以按照要求完成工作,但是并不对功能进行测试,主要用于软件的验证。
1.尽早不断测试的原则
应当尽早不断地进行软件测试。据统计约60%的错误来自设计以前,并且修正一个软件错误所需的费用将随着软件生存周期的进展而上升。错误发现得越早,修正它所需的费用就越少。
2.IPO原则
测试用例由测试输入数据和与之对应的预期输出结果这两部分组成。
3.独立测试原则
(1)独立测试原则。这是指软件测试工作由在经济上和管理上独立于开发机构的组织进行。程序员应避免检査自己的程序,程序设计机构也不应测试自己开发的程序。软件开发者难以客观、有效地测试自己的软件,而找出那些因为对需求的误解而产生的错误就更加困难。
(2)合法和非合法原则。在设计时,测试用例应当包括合法的输入条件和不合法的输入条件。
(3)错误群集原则。软件错误呈现群集现象。经验表明,某程序段剩余的错误数目与该程序段中已发现的错误数目成正比,所以应该对错误群集的程序段进行重点测试。
(4)严格性原则。严格执行测试计划,排除测试的随意性。
(5)覆盖原则。应当对每一个测试结果做全面的检查。
(6)定义功能测试原则。检查程序是否做了要做的事仅是成功的一半,另一半是看程序是否做了不属于它做的事。
(7)回归测试原则。应妥善保留测试用例,不仅可以用于回归测试,也可以为以后的测试提供参考。
(8)错误不可避免原则。在测试时不能首先假设程序中没有错误。