快速了解接口信息 - 图1

一、提测项目信息

开发提测前理想状态下测试已获取以下文档信息,这些文档都是作为开展测试的必要输入内容,也将减少测试开发之间的沟通成本。

需求文档

  1. - 描述被测系统的业务逻辑,并据此文档编写测试用例

原型设计

  1. - 展示被测系统使用逻辑,补充用例细节

技术文档

  1. - 系统交互、技术实现以流程图、时序图方式呈现
  2. - 接口文档:描述接口的访问方式和出入参说明,以及一个完整的示例;http接口目前使用swagger工具接口,这个接口工具是代码生成可根据代码的变更而更新。

二、无接口文档

非理想情况下,由于项目紧急程度或者开发态度可能不会提供详细的接口文档,接口测试则需要分三步走。

工具辅助

  1. - 借助fiddercharles等抓包工具在本地建立代理服务,当浏览器和服务器之间交互时会经由代理,因此截获接口信息流。

接口分析

  1. - 获取接口信息后,分析接口
  2. - 接口请求头信息
  3. - cookie等信息需要被关注用于确认用户身份
  1. HOST,它表示指定访问的服务器域名;
  2. Connection 的值为 keep-alive,这表示需要持久连接;
  3. Accept,它表示客户端可以接受的内容类型为 application/json, text/plain, /
  4. User-Agent,它说明请求是从什么浏览器发出去的;
  5. Sec-Fetch-Site Sec-Fetch-Mode,它们是 JS 中对跨域的一些设置;
  6. Accept-Encoding 设置为 gzipdeflatebr,这表示可以支持的 Web 服务器返回内容压缩编码类型;
  7. Accept-Language,它表示接受的语言。
  1. - 接口入参含义、来源
  2. - 请求入参的含义以及参数来源于什么数据,如该请求入参为上一个接口出参返回,过户系统预约过户时间接口中的过户单号入参,为创建过户单接口返回的出参。
  3. - 接口入参作用域
  4. - 这个入参在接口中的作用是什么,是否导致了业务的逻辑分支。如在创建支付单的接口中,业务类型入参,则标识着不同业务场景下创建的支付单
  5. - 接口出参
  6. - 理解接口出参含义,是否串联了业务逻辑即在业务逻辑上依赖此出参

问题询问

针对以上接口分析的未解决的问题询问开发解决,接口信息记录、更新至文档,形成对改接口的认知。
image.png

三、接口串行测试

单接口无法校验场景流程是否正确,接口测试仍需要依据场景进行业务逻辑的接口串行。甚至编写出该业务流程的自动化脚本。

四、实践

1、实际在测试工作中,无接口文档的情况下可选择获取开发代码git权限,查询实际代码。
2、接口信息可通过postman等工具维护