开始接口测试
在开始业务逻辑接口测试之前,你要先通过接口测试的方法,测试每一个接口都是正确的, 既要保证单接口的正确性,也要保证接口的业务逻辑正确性,这里所说的“正确”指的 是“正确接受合法 Request 入参”。
单接口的测试
单接口测试的重点,其实就是保证该接口的正确性和健壮性,也就是说,你既要保证这个接 口可以按照需求,正确处理传入的参数,给出正确的返回;也可以按照需求,正确的拒绝传 入非正确的参数,给出正确的拒绝性返回。完成了这一步,只能算是把接口测试工作完成了一半,另外一半就是要按系统的业务逻 辑来完成“正确的流程可以完成处理,不正确的流程可以正确拒绝处理”这个验证。
业务流程接口测试
业务流程接口测试,主要是保障通过多个接口的串联操作可以完成原来需求中提出的业务逻辑。但是有了业务逻辑接口测试用例,和业务测试的测试用例相比,确实少了很多异常状况,,比如正拒绝登 录、正确登陆选择的装备参数是字符串等等,这一系的业务流中的反向用例都没有进行验证。
这也是接口测试和业务测试在设计测试和执行测试过程中的差异点,在接口测试中,我们通 过单个接口测试完成了全部异常状态的覆盖;而在业务流程中,我们更需要关心业务流和数 据流的关系,并不需要再过度关心如何用业务流的方法覆盖更多的代码逻辑异常,这也是分 层测试中为什么在单元测试和界面测试之间要加入一层接口测试的主要原因之一。
通过单接口测试,可以更加接近于单元测试;通过业务流的接口测试,可以更加接近于界面 所承载的交互中的业务流验证,这也是为什么现在很多人在提倡将测试模型由原来的金字塔形往菱形转变的依据之一了。
所以接口测试思路是:【先从单个接口的测试开始,保障单个接口的正确性和健壮性,然后通过单个接口的测试完成多个接口的业务逻辑串联,站 在业务逻辑的角度完成业务逻辑的正确性检测】
总结:
接口测试的执行方式、设计思维都和业务测试不完全一致,它们既有交集又有差异。交集部分是它们都会涉及到业务逻辑测试,但是接口测试更加关注有数据流驱动的业务流程,而不再着眼于代码异常、代码边界等,这些边界问题在接口测试过程中已经由单接口测试完成 了。
接口测试在单接口测试的设计思维上也更加贴近于代码的单元测试,但它还是站在 Client 端的角度来完成测试;而接口测试的业务逻辑测试更加靠近手工业务测试,但却更加聚焦于 业务逻辑本身,不再将一些非法业务异常放到该部分进行测试