关闭

基于TTCN-3的协议互操作性测试

发表于:2009-3-27 15:25

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:chnzui    来源:航天测控

#
TTCN

  一、协议测试

  协议测试是用来保证协议实现的正确性和有效性的重要手段。协议测试是在软件测试的基础上发展起来的,主要包括4种测试:

  1、一致性测试(Conformance Testing):检测协议实现系统与协议的符合程度;

  2、性能测试(Performance Testing):检测协议实现系统的性能指标(如数据传输率、连接时间、执行速度、和吞吐量等);

  3、互操作性测试(Interoperability Testing):检测同一协议的不同实现版本之间、或同一类协议的不同实现版本之间互通能力和互连操作能力;

  4、鲁棒性测试(Robustness Testing):检测协议实现系统在各种恶劣环境下运行的能力(信道被切断、通信技术掉电、注入干扰报文等)。

  二、互操作性测试

  协议测试系统是对协议进行有效测试的有机的、完整的统一体。协议一致性测试目的是检测IUT(Implementation Under Test)是否能够按照协议标准所规定的实现了它的功能,但是并不验证IUT与其他系统的互操作性,所以一致性测试无法检查出IUT在与其他系统互连时功能上的不正确性。因此必须能够对IUT互连时的互操作性功能进行检测。在互操作规程测试中,既可以存在专门的测试系统,也可以不存在。当没有专门的测试系统存在时,互操作的测试过程只是简单地将两个被测系统互连在一起,由测试人员或测试程序对两个系统的行为进行控制和观察。这种互操作性测试方法有许多缺陷。当被测试系统由多层协议组成时,测试系统无法对内部协议层的行为进行观察,也无法得到像协议一致性测试中那样详尽的测试报告,所以当发现功能上的问题时,就无法准确地定位是哪一层协议实现有错误。而且在这种测试结构下,只能观察到被测系统向高层提供的服务,却无法对底层的信息交换进行监测,从而无法观察到被测系统对底层不正常行为反应。所以这种不带专用测试系统的互操作规程测试只能达到互连通性测试的目的,而不能成为严格意义上的“互操作性测试”。由于协议的互操作性测试没有像一致性测试那样的国际标准,所以各种互操作系统所使用的方法都不相同,而其测试效率也差别很大。

  互操作性测试系统的实现方法有很多,一种理想的测试系统的结构框图如图1所示。

  

  在这一测试系统中,每一个被测系统SUT(Sytem Under Test)都通过用户接口展开测试活动,因此测试器1和测试器2便分别扮演了被测协议实现1和被测协议实现2的用户。测试系统的作用是控制和观察测试器1 与被测协议实现1、测试器2与被测协议实现2之间的交互作用,同时尽可能的观察两个被协议实现之间通过(N-1)层服务进行的信息交换。测试系统也可以生成错误的数据测试协议实现IUT的错误恢复能力。

  互操作性测试的主要过程与一致性测试有许多相似的地方(如图2),主要有如下一些步骤:

  

  1、通过分析在实际网络环境下的协议标准,定义测试目的,制定抽象测试集ATS。互操作性测试ATS与一致性测试ATS非常相像,但内容不同。

  2、根据ATS开发互操作性测试可执行测试集ETS(Executive Test Case)。在互操作性测试中,对ATS的处理过程与一致性测试完全相同。

  3、分析PICS和PIXIT,选择互操作测试的测试项。

  4、执行互操作测试,每个测试项的测试结果与一致性测试一样,也分为测试通过、测试失败和测试无结论三种。

  5、对测试结果进行分析,产生测试报告。

41/41234>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号