论文部分内容阅读
协议工程是一体化、形式化的协议开发过程。协议测试是协议工程的一个重要组成部分,包括一致性测试、互操作性测试、性能测试和坚固性测试。协议测试就是在协议形式化模型的基础上生成测试用例、执行测试用例并进行测试结果分析的过程。 协议一致性测试是协议测试的基础。其目的是检查待测协议实体(IUT)的行为与协议规范是否一致。它的工作流程一般是首先对通信协议进行形式化描述,然后针对形式化模型生成测试序列,最后使用此测试序列进行测试。随着协议规范复杂性的增加,单纯的集中式测试方法不能满足很多协议的测试需求。 本文在协议分布式测试体系结构的基础上,讨论了分布式测试中的控制问题和观察问题。分布式测试中的控制问题指的是在多端口状态下,由于没有全局时钟,测试体无法确定向IUT发送输入的时刻;观察问题指的是测试体无法确定开始等待接收输出的时刻。本文围绕着这两个问题展开研究并给出了解决方案。 本文的研究工作主要集中在以下几个方面: (1) 增加协调消息后使用全局测试序列生成局部测试序列 协议测试序列生成算法一般生成IUT的全局测试序列,在映射为局部测试序列时存在着控制问题和观察问题,为此本文引入协调消息解决潜在的控制问题和观察问题,并对引入协调消息的辅助通信代价进行分析,给出了一个改进方案,改进方案在一定程度上能够降低协议分布式测试中辅助通信代价。 (2) 协议一致性测试中的时间约束问题 时间是协议中的重要参数,对协议中的时间进行讨论并且给出严格约束能够在降低测试代价的同时提高测试的准确性,本文对协议一致性测试中的时间进行分析和约束。 本文首先对协议一致性测试中的时间进行分析和总结,给出了协议测试中涉及到的响应时间、传输时间和等待时间的上界约束,然后给出了基于时间约束的测试序列生成算法。 在对一致性测试中的时间进行严格约束的基础上,本文提出了基于IUT时