度量目的:对于规定的数据传输、交换接口的功能已经被实现的正确程度如何?
应用的方法:按照数据字段规格说明,测试系统的每一个下游接口功能输出记录的格式。对在测试数据交换中正式能与其他软件或系统交换的数据格式的数目进行计数,并与数据交换的总数相比较。
· 数据的可交换性(基于用户的成功尝试)
度量目的:最终用户不能在目标软件与其他软件之间交换数据的频度如何?在目标软件与其他软件之间数据成功传送的程度如何?用户能否经常成功地交换数据?
应用的方法:对使用接口功能和失败次数进行计数。
——从定义看来,主要是针对系统之间的接口,比如foxmail中导出的邮件能否导入outlook,侧重于软件。类似于系统之间的接口测试。那么系统内部的接口测试呢?比如系统与OS、系统内部模块该怎么归类?
○ 互操作性测试的概念和分类
协议是计算机网络和分布式系统中各通信实体间相互交换信息时所应遵守的一组规则。协议是构建网络分布系统的基础,其在网络和分布系统的发展中,一直处于核心地位。协议测试是指按照协议标准,通过控制观察被测协议实现的外部行为对其进行评价。按照ISO 9646规范,协议测试包括四个方面的内容:
(1)一致性测试:目的在于检测所实现的系统与协议规范的符合程度;
(2)性能测试:用于检测协议实体或系统的性能指标(数据传输率、连接时执行速度、吞吐量等);
(3)互操作性测试:检测同一协议不同实现版本之间、或同一类协议不同实现版本之间互通能力和互连操作能力;
(4)鲁棒性测试:检测协议实体或系统在各种恶劣环境下的运行的能力。
互操作性测试作为一致性测试的补充,力图进一步提高系统互操作性的置信度。它检验两个或多个同一个协议的实现之间的互操作的可能性。
什么是互操作性呢?互操作性本身来自于开放系统,它是开放系统的一个特性。几个典型的互操作性定义如下:
SPAG/ISO:当两个产品相互台作, 协同地为各自所面向的用户提供某个指定的服务时,所表现出的能力称为互操作性。
YS IEEE:互操作性是指两个或多个系统相互使用已被交换了的信息的能力。
再看看各现场总线对互操作性的定义:
FF:互操作性意味着来自不同厂家的多个设备能在同一个系统中相互正常操作,而不会损失其设备功能。
LonWorks:保证多个节点(来自同一个或不同的制造商)能够集成于一个阿培而无需客户进行节点或工具开发。
SPAG/ISO和US IEEE的定义首先是说明互操作性是发生在多个(至少两个)产品(或系统)之间的一种关系,其本质就是从异种系统(异种机, 异种网, 异种数据库等)中可获得
资源透明动用的能力现场总线对互操作性的定义实际上是SPAG/ISO~ US IE既的定义的子集,对系统的通信体系结构进行了限制。
○ 不可互操作的具体原因
对不可互操作的原因进行分析可进一步加深对互操作性的理解,对提高互操作性的可能性也有重大帮助。不可互操作的原因主要有:
1)服务问题。由于服务的不可用而造成互操作发生问题
2)协议问题。两个不同系统的协议实现中的选项和参数如果不兼容, 则会导致互操作性问题。
3)资源问题。系统之间的互操作都需要资源,但资源是有限的,如果在某些情况下,出现资源不够就可能台导致互操作性问题。这种资源可以是硬件资源,如物理内存,物理缓存,CPU时间等,也可以是软件资源, 如一些应用对象等。
4)时间问题。所有的通信都需要确定时间参数。时间问题可分成晟大时间,最小时间以及持续时间的不能匹配问题。时间参数不兼容,就会出现互操作问题。特别是象现场总线这种对实时性要求比较高的系统,在这方面出现问题的可能性也较大。
5)应用程序问题或用户配置问题。这实际上并非是OSI范围内的问题,但却最终让用户感觉是出现了互操作性问题。
6)接口问题。根据OSI的基本参考模型和分层原则,对于N层实体来说,它为上层实体提供服务及其接口,同样通过下层实体的接口来使用该层服务。如N层通信对等实体之间出现互操作问题, 则可能出现问题的地方有:N层实体本身对N层协议的实现错误N层实体使用下层实体的接口不当,下层实体的实现正确但提供的接口错误及下层通信对等实体存在互操作问题。
7)协议自身实现问题。
这也是最主要的问题,它是由于实现者的错误实现而造成的。可以将这样的实现错误问题进行具体分类。表1就是其中的一种分类描述。
根据以往的经验,系统出现的互操作性问题在各层上出现的概率有所不同 一般说来,在上几层(包括应用层,台话层等)出现的概率较大,而在下几层(如物理层,数据链路层等)出现的概率要小。因此,为提高系统的互操作性,需要加强对上层协议,特别是应用层协议中有关提高互操作性方面的设计和测试。
功能性的依从性
软件产品遵循与功能性相关的标准、约定或法规以及类似规定的能力。
外部功能性的依从性度量宜对这样的属性进行测量,即带有依从性问题的功能或事件的数目,这些依从性问题是指软件产品不遵从标准、约定、合同或其他法定的需求。
其他
软件的功能分为四个部分,分别为:人机接口功能、系统接口功能、指令处理、数据处理等。
人机接口功能:指的是软件系统与用户之间的交互功能,包括信息的输入、处理结果的反馈等功能。
系统接口功能:指的是软件系统与系统之间的交互功能,包括系统间的信息传递、传输协议的规定功能。
指令处理功能:指的是软件系统中针对指令处理功能,包括业务流程控制逻辑、处理状态转移等。
数据处理功能:指的是软件系统所有针对数据的处理功能,包括业务数据流处理逻辑、数据计算逻辑等。
文章来源于领测软件测试网 https://www.ltesting.net/