状态迁移法

1、概念

很多需求可以用状态机的方式来描述,状态机的测试主要关注状态转移的正确性。

主要包括:

给定条件是否产生正确的状态变化;

是否会产生非法的状态变化;

有无不可达的状态和非法的状态;

对于用状态机描述的需求,我们可以进一步把需求抽象成对多种状态以及状态之间的切换条件和切换路径的测试。因此我们可以从状态迁移路径覆盖的角度来设计测试用例对需求进行测试。

2、如何使用

(1)绘制状态迁移图

画出所有状态(用圆圈表示),并用带方向的箭头标记状态的变化方向,并在箭头旁标记出状态变化的条件。

(2)定义状态-条件表

根据状态迁移图,绘制状态和条件的表,即把迁移图中每条状态变化的前后状态及条件记录在表里。

(3)推导测试路径

从初始状态(1个或多个)节点开始,依据广度优先原则遍历状态迁移图,具体遍历算法参考有向图的搜索算法。

选取需要测试的路径,完成测试路径覆盖的要求,并为每条测试路径准备1个或多个测试用例,记录在一张表里。

(4)根据测试用例,准备需要的测试数据

你可能感兴趣的:(状态迁移法)