扩展有限状态机(EFSM)模型下通信协议的测试用例生成
引言
在通信协议的一致性测试用例生成领域,模型正从有限状态机(FSM)向扩展有限状态机(EFSM)转变。这是因为FSM模型无法全面准确地描述通信协议,其控制流测试未考虑数据流,不仅适用性受限,无法检测数据流错误,还可能因未考虑测试序列的可执行性而不切实际。
EFSM测试包含控制流测试和数据流测试两部分。控制流测试常采用FSM测试的方法,而数据流测试则多使用能满足Weyuker数据选择标准之一的测试序列。然而,控制流和数据流相互依赖,控制流中的转换是否可执行取决于其数据集。
近期提出了一些考虑两者关系的方法,如EUIO方法和统一测试序列生成方法,但EFSM模型中控制流和数据流的相互依赖仍干扰着具有理想测试覆盖率的测试用例生成。为解决此问题,有研究通过释放谓词语句来扩展EFSM,并假设谓词语句中变量的域是有限且可数的,以避免状态爆炸。不过,扩展后的EFSM仍是EFSM而非纯FSM,因此需要新的测试用例生成方法来考虑故障覆盖率进行测试。
扩展EFSM及其特性
协议的EFSM一致性测试由控制流测试和数据流测试组成。传统EFSM结构中,控制流和数据流在条件转换中混合,导致测试的故障覆盖率不明确。为解决这一问题,我们将EFSM转换为扩展EFSM,通过消除谓词来分离控制流和数据流。分离后的控制流和数据流在功能上与原EFSM等价,且独立性使测试用例的生成更简单。虽然扩展EFSM的状态数比原EFSM多,但只要所有变量的域是有限的,状态数就是有限的。
测试用例生成过程从单模块EFSM开始。由于多模块EFSM难以分析和测试,需要将其简化为等价的单模块EFSM。我们的目标是在控制流测试
超级会员免费看
订阅专栏 解锁全文
56

被折叠的 条评论
为什么被折叠?



