主页

索引

模块索引

搜索页面

接口测试入门课

点评

备注

真是入门课,适合没有开发知识的人入门用,比较浅显。比较注意的是,他解答了我一直以来的一个疑问,如果你刚接手一个项目或你无法控制要不要写单元测试时,增加接口测试的比重来弥补单元测试的不足,测试模型从金字塔变成菱形也不是不能接受(虽然没有金字塔好,但也能保证产品的质量)。

开篇词 | 把接口测试这件小事做深/做透

  • 《京东质量团队转型实践:从测试到测试开发的蜕变》

  • 《Google 的软件测试之道》

  • 《软件测试的艺术》

  • api测试平台: https://github.com/YMFE/yapi

  • 接口文档和测试的工具: https://github.com/arlicle/panda-api

  • Rap: 阿里妈妈 MUX 团队 2013 年出的一款产品,从时间上看是同类产品中最早的。Rap 是后端工程师基于 java 开发的

  • Nei: 网易前端事业部的产品,专注做 saas 服务这块,没有开源版本

  • Easy-Mock: 大搜车无线团队出的一款产品,定位是接口数据的模拟

  • eolinker:

  • https://apifox.cn

  • https://console.apipost.cn

  • 易文档: https://easydoc.net/

  • 智能化单元测试框架: EvoSuite

01 | 基础: 跳出细节看全局

https://img.zhaoweiguo.com/uPic/2022/09/2l4KBe.jpg

测试金字塔模型

https://img.zhaoweiguo.com/uPic/2022/09/6t85ZI.jpg

加大我们自己主导的接口测试的工作投入比重,来弥补单元测试的不足,这样,上面那个金字塔模型就会逐渐演变成菱形模型。

  • 《自动的自动化测试智能化一站式 API 测试服务》——2019 年 TiD 上的演讲

接口测试其实就是模拟调用方,比如 Client 端,通过接口通信来检测被测接口的正确性和容错性

  • 接口测试是通过设计输入和预期输出来完成测试验证的

  • 接口测试是一个技术知识和业务知识相结合的工作

  • 接口测试也是功能测试,会覆盖部分单元测试和界面测试的工作

备注

对测试来说,正常请求和异常请求都是正向测试;反向测试是正向测试的反操作,如支付的反向操作是退款。

02 | 方法论: 没有任何文档, 怎么才能快速了解接口的信息

一个理想的提测项目:

1. 产品需求
2. 原型设计
3. 接口文档
4. 单元测试脚本

接口测试分为:

1. 单接口测试
2. 业务逻辑测试
  1. 单接口测试:

    目的: 为了完成单个服务接口的功能正确性和健壮性
    更加贴近于代码的单元测试
    站在 Client 端的角度来完成测试
    将一些非法业务异常放到该部分进行测试
    
  2. 业务逻辑测试:

    更加靠近手工业务测试,但却更加聚焦于业务逻辑本身
    不再将一些非法业务异常放到该部分进行测试
    

主页

索引

模块索引

搜索页面