协议测试已经成为计算机网络和分布式系统协议工程学中最活跃的领域之一。近年来,协议一致性测试技术得到了很好的发展和完善,与此同时,互操作测试和性能测试逐渐成为新的研究热点。
协议测试包括四种测试:
1)一致性测试(Conformance ):检测所实现的系统与协议规范符合程度;
2)性能测试(Performance ):检测协议实体或系统的性能指标(数据传输率、联接时间,执行速度、吞吐量、并发度等);
3)互操作性测试(Interoperability ):检测同一协议不同实现版本之间、或同一类协议(如电子邮件协议X.400和SMTP)不同实现版本之间互通能力和互连操作能力;
4)坚固性测试(Robustness ):检测协议实体或系统在各种恶劣环境下运行的能力(信道被切断、通信技术掉电、注入干扰报文等)。
协议测试是在软件测试的基础上发展起来的。根据对被测试软件的控制观察方式,软件测试分为:白盒,黑盒和灰盒测试。
协议测试是一种黑盒测试,他按照协议标准,通过控制观察被测协议实现的外部行为对其进行评价。
协议测试主要研究以下三方面:
一致性测试(Conformance Testing)主要测试协议是否严格遵循相应的协议描述;
互操作性测试(Interoperability Testing)主要关注,对于同一个协议标准,不同协议实现之间的互联互通问题;
性能测试(Performance Testing)用实验的方法观测被测试协议实现的各种性能参数,如吞吐量,传输时延等