摘要:接口验证是软件测试中一个重要的方面。本文按被测对象与周边实体的消息处理关系将接口验证方式抽象成几种模式:C模式、S模式、C&S模式、分发模式、异步模式等。然后按模式从接口契约定义、请求和响应配合等方面,给出接口验证的一般要求。

  关键词:接口验证 测试模式 协议一致性

  1、相关概念

  1.1 接口

  这里所说的接口主要是指的是消息接口,是二个部件之间的通信契约,有发送方、接收方等方面的属性,同GUI接口、文件接口一样,它本质上属于一种输入、输出方式,只是它涉及到2个不同部件/实体,有请求/响应、有连接通道要求,由此带来超时、重发、重连等方面的一系列要求。

  1.2 接口、流程、处理的关系

  一个流程由一系列的处理、接口调用组成。

  一个流程可能涉及多个不同部件,涉及多个不同的接口调用。

  一个接口可能服务于多个流程,多个流程共用同一个接口。由此,接口验证里需要对同一个接口遍历不同的流程调用场景。

  接口作为数据的一种形式,它影响流程的走向。

  接口作为数据的一种形式,它影响流程的结果。

  有些接口处理可能是纯接口的、只做中转、协议转换等。例:下面例子中的E部件接口;有些接口处理可能有较强的功能逻辑,根据需要可能还会进一步细化成内部接口。由此,接口验证可能需要针对接口处理作进一步的功能逻辑验证。

  2、一个例子

  以下为某个处理的简化流程。P部件发出请求,E部件协议转换后转发给M部件,M部件进业务逻辑处理后返回响应给E部件。

  接口的测试设计思路:

  ● 列出与每个部件的交互点。 包括:与P 部件的交互点1.1~1.2;与E 部件的交互点2.1~2.4;与M部件的交互点3.1~3.2