测试理论都有哪些内容(测试理论的8个主要内容)

测试理论都有哪些内容(测试理论的8个主要内容)

  基本概念

  测试是为了发现程序中的错误而执行程序的过程,软件测试工程师在一家软件企业中担当的是“质量管理”角色,及时纠错及时更正,确保产品的正常运作,软件测试人员必须具有创新性和综合分析能力,必须具备判断准确、追求完美、执着认真、善于合作的品质,以及具有丰富的编程经验与查检故障的能力。

  测试部门需要保持其独立性。

  详细分类

  1、按照软件内部结构和实现

  1)白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查

  2)黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求

  3)灰盒测试:介于白盒与黑盒之间,在关注输出正确的同时也考虑内部的实现逻辑

  2、按照是否执行程序

  1)静态测试:不执行程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等

  2)动态测试:运行被测程序,检查运行结果与预期结果的差异

  3、按照开发阶段

  1)单元测试:集中对用源代码实现的每一个程序单元进行测试,检查各个程序模块是否正确地实现了规定的功能

  2)集成测试:把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试

  3)确认测试:检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确

  4)系统测试:把已经经过确认的软件纳入实际运行环境中,与其它系统成份组合在一起进行测试

  5)验收测试:产品发布前进行的保证用户能正常使用的测试过程

  4、按照测试目的

  1)回归测试

  2)压力测试

  3)性能测试

  4)稳定性测试

  5)其他专项测试

  测试模型

  1、V模型

  1)瀑布式模型,非常明确地标明了测试过程中存在的不同级别,并且清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系

  2)局限性:把测试作为编码之后的最后一个活动,需求分析等前期产生的错误直到后期的验收测试才能发现

  2、W模型

  1)V模型的发展,强调的是测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、功能和设计同样要测试。测试与开发是同步进行的,从而有利于尽早地发现问题。

  2)局限性:同V模型一样把开发测试作为一个串行的活动

  3、H模型

  1)针对单独的程序片段进行相互分离的编码和测试,此后通过频繁的交接,通过集成最终合成为可执行的程序

  2)局限性:对测试造成人力、物力和财力的浪费,对测试员的熟练程度要求比较高

  4、X模型

  1)软件测试过程活动完全独立,贯穿于整个产品的周期,与其他流程并发地进行,某个测试点准备就绪时,就可以从测试准备阶段进行到测试执行阶段。软件测试可以尽早的进行,并且可以根据被测物的不同而分层次进行

  2)局限性:对于大型嵌入式项目很难实施

  测试方法

  1、等价类划分

  1)有效等价类:对于程序规格说明来说是合理的、有意义的输入数据构成的集合

  2)无效等价类:与有效等价类相反

  2、边界值分析:对输入或输出的边界值进行测试的黑盒测试方法

  3、错误推断:基于经验和直觉推测程序中可能存在的各种错误,从而有针对性的设计测试用例的方法

  4、因果图法:利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况

  5、判定表驱动:判定表是分析和表达多逻辑条件下执行不同操作的情况的方法

  6、正交实验法:从大量的实验数据中挑选适量的,有代表性的点来进行测试用例设计的方法,类似的方法还有聚类分析法、因子法等

  7、功能图法:综合了逻辑覆盖和路径覆盖的测试方法,偏向于灰盒测试的一种测试方法

  8、场景法:根据不同的触发场景来设计测试用例

推荐阅读