接口测试 测试基础

测试理论

接口:系统或组件之间的交互点,通过交互点实现数据的交互。

接口类型:

  • 系统间的接口:多个内部系统之间的交互,内部系统与外部系统之间的交互
  • 程序内部的接口:方法与方法之间,模块与模块之间的交互

接口测试:对系统或组件之间的接口进行测试,只要是校验数据的交换、传递和控制管理过程,以及相互逻辑依赖关系

接口测试原理:模拟客户端向服务器发送请求,服务器接收请求后进行相应的业务处理,并向客户端返回响应数据,检查响应数据是否符号预期

接口测试实现方式:

  • 接口测试工具(JMeter,Postman)
  • 编码实现(Python+Requests)

HTTP协议

URL格式http://www.itcast.cn:8080/news/index.html?uid=123&page=1

  • 协议部分:“http”,常见的协议有HTTP,HTTPS、FTP等
  • 域名部分:“www.itcast.cn”,也可以使用IP地址作为域名使用
  • 端口部分:“8080”,端口可以省略,默认端口(HTTP:80,HTTPS:443,FTP:21)
  • 资源路径部分:“/news/index.html”
  • 查询参数部分:“uid=123&page=1”,可以允许有多个参数,多个之间用“&”作为分隔符

HTTP请求

  • 请求行:请求方法、要访问的资源(URL)、使用的版本
  • 请求头:由键值对组成,每行一对。请求头部通知服务器有关客户端请求的信息
  • 请求体
    • 请求体不在GET方法中使用,经常在POST、PUT方法中使用
    • 请求体的数据可以是:表单数据、文本、XML、JSON
    • 与请求数据相关的最常用的请求头是Content-Type和Content-Lenght

HTTP响应

  • 状态行:协议版本号、状态码、状态消息
  • 响应头:描述服务器的基本信息,以及数据的描述,服务器通过这些数据的描述信息,可以通知客户端如何处理响应数据
  • 响应体:响应的消息体,数据可以是普通文本、XML、JSON、HTML源码

接口测试流程

1. 需求分析

  • 主要依据需求文档

2. 接口文档解析

  • 一般是由开发人员编写接口文档(API文档)

3. 设计测试用例

4. 执行测试 

  • 使用接口测试工具实现
  • 通过编写代码实现

5. 接口缺陷管理与跟踪

6. 生成测试报告

7. 接口自动化持续集成(可选)

API文档

接口文档内容

  • 基本信息
    • 接口名称、请求方法、请求路径、接口描述
  • 请求参数
    • 请求头
    • 请求体(包含具体的请求参数名称、参数类型、是否必须、示例、备注)
  • 返回数据
    • 不同情况的响应状态码
    • 响应数据(包含具体的响应数据名称、类型、是否必须、默认值、示例、备注)

 接口测试测试点

  • 功能测试:验证接口功能是否按照接口文档实现(输入+处理+输出)
    • 单接口功能测试
      • 正向功能(通过性测试),接口正确时的表现
      • 反向测试(异常测试),接口错误时的表现
    • 多接口功能测试(业务场景功能),站在用户角度考虑常用的使用场景
      • 接口之间数据依赖

 单接口测试:测试用例和接口文档类似

  • 性能测试
  • 安全测试
    • 敏感数据是否加密
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值