通常认为的接口测试无非是,输入url、参数值,点击请求发送查询下响应值和响应状态码是否正常就完事了。

但接口测试真正的侧重点可不止这些,下面就给大家说说说接口测试有那些要关注的地方。

在实际的项目中,后端接口测试通过后,通常前端还要再测一遍。大家可能会有疑惑:后端接口测一次,前端也测一次,是不是重复测试了?实际上这两者并不重复,区别在于后端接口测试和前端功能测试各自的侧重点不同,后端接口测试侧重点是检查数据的交换、传递和控制管理过程。而前端功能测试则是检测提供给用户的使用功能是否正确可用。虽然两种测试的重点不同,但也存在相同的部分,以功能测试、业务逻辑测试、性能测试和安全测试为例:

一、接口功能侧重点

因为测试最终的目的都是业务功能是否正确且稳定可用,所以无论是前端给用户使用的功能测试,還是后端的接口测试,功能保障是基本要求,也是后端测试和前端测试两种测试重合度最高的一块。具体需要关注的有以下几个点:

  1. 接口的功能是不是准确实现了
  2. 接口是不是依照设计文档里实现(例如username参数写成了name,那这就不行,因为接口文档在一整个开发流程里都要使用,所以接口具体的设计要与接口设计文档中保持一致)
  3. 兼容性测试:例如昨天接口做了修改,但是前端沒有进行变更,这时要验证新的接口是不是兼容旧的调用方式
  4. 错误代码测试:通用的错误代码与业务错误代码是不是可以清晰的说明调用问题,错误代码是不是可以尽量的全的覆盖所有的时候
  5. 返回值测试:返回值不仅内容要是准确的,还要类型也是准确的,确保调用方拿到这些参数可以准确的解析
  6. 默认值测试:很多时候有些非必填的参数会有默认值,例如1个查询的接口,参数count为返回查询的结果数目,默认为9,那就应该有一条case来测试,当然前置条件是数据库里必须要有这样的数据超过9条。

二、接口业务逻辑测试

  1. 是不是有依赖业务,例如查看订单,是要用户先登录的,所以肯定要确保登录了或有相应的cookie
  2. 业务逻辑测试:传递准确的参数,接口对数据库做查询的操作,要去验证数据库查询是不是准确,接口对数据库做增删改的操作,也要看数据库是不是同步执行了这些操作

三、接口性能测试

  1. 接口响应时间
  2. 接口对应的服务器的吞吐量
  3. 接口并发数目
  4. 服务器进出口带宽

四、接口安全测试

  1. 接口中敏感信息是不是加密
  2. 必要参数是不是后端也做校验(如今很多系统前后端架构是分离的,从安全性层面来讲,只依赖前端做限制早已完全不能达到系统的安全性要求(绕过前端太容易了),要后端同样做控制,在这样的情况下就要从接口层面做验证)
  3. 接口是不是防恶意请求(SQL注入)
  4. cookie:就是将header中的cookie修改或删除后看是不是能返回相应的errorcode
  5. header:就是删除或修改header中部分参数的值,看是不是能返回相应的errorcode
  6. 唯一识别码:删除修改唯一识别码测试

五、接口测试工具

Eolink可以进行接口的功能测试和业务逻辑测试,除此之外还有强大的接口文档生成功能

使用地址:www.eolink.com

说点什么吧...