软件动态测试技术
软件动态测试一般分为白盒测试和黑盒测试。白盒测试重在检查内部结构,黑盒测试重在检查功能逻辑。
1.白盒测试
白盒测试一般有基本路径测试、逻辑条件测试、数据流测试和循环测试等。
1)基本路径测试:对程序控制结构中的线性独立路径进行测试,可保证每条语句至少执行一次,每个分支至少执行一次。
2)逻辑条件测试:检查程序模块中所包含的的逻辑条件,逻辑条件一般包括布尔操作符、布尔变量、关系操作符或算术表达式等条件分量,对每一个条件分量正确与错误进行覆盖测试。
3)数据流测试:按照程序中变量的定义和使用来选择测试路径,数据流测试至少覆盖数据链一次。
4)循环测试:注重循环构造的有效性,循环测试一般包括简单循环、串接循环、嵌套循环和无结构循环。循环测试一般考虑整个循环跳过、只有一次通过循环、两次通过循环、m次通过循环、n次循环及n+1次通过。
5)控制流测试(语句覆盖、分支覆盖、条件覆盖、条件组合覆盖、路径覆盖等)。概括了前面的叙述。
2. 黑盒测试
黑盒测试设计方法一般有功能分解、等价类划分、边界值分析、因果图、判定树、随机测试、猜错法、正交测试等。
1)等价类划分:将程序的输入域、输出域划分为若干等价数据类,每个等价类中的一个典型值在测试中的作用与这一类中其它值的作用相同,因此在每个等价类中选取典型的具有代表性数进行测试;等价类划分的数据类至少覆盖有效等价类和无效等价类。 2)边界值分析是等价类划分的一种补充,对每个等价类的边界值进行测试,边界一般包括边界值、内边界、外边界。
3)因果图:将需求分解为若干可执行的片段,对输入状态间的相互影响、输出状态间的相互制约的因果关系进行测定。
4)判定树或判定表:逻辑条件取值的组合所构成多种情况,分别执行不同的操作,对这类测试一般采取判定树的方法;
文章评论(0条评论)
登录后参与讨论