性能测试全栈笔记:5.接口与HTTP协议

作者: admin 分类: 性能专题,接口专题 发布时间: 2021-11-11 11:25

性能测试全栈笔记

开篇申明:本节主要介绍接口及HTTP基本使用,会看接口(API)文档,知道如何解析文档,能够区分请求与响应即可。

五、接口与HTTP协议

目标:

  • 1.了解HTTP协议的特点
  • 2.具备接口文档解析能力

接口测试基础理论:

  • 接口概念:系统或组件之间数据交互的通道
  • 接口分类:
  • 软件(这里只关注软件层接口)
    • 系统之间的接口
    • 组件之间的接口
  • 硬件(不介绍)
  • 接口测试:
  • 概念:针对接口开展测试。主要测试数据的传递、交互、控制管理过程以及逻辑依赖关系。
  • 原理:模拟客户端向服务器发送请求,服务器接收请求后进行相应的业务处理,并向客户端返回响应数据,检查响应数据是否符合预期。

引申内容:接口自动化测试:用工具或代码代替人工基于接口项目进行测试的过程。工具一般使用Postman+Newman+Jenkins(此内容会在后续Postman专题课中分享)

HTTP协议:

  • 概念:
    • 超文本传输协议,是一个基于请求与响应模式的、应用层的协议,也是互联网上应用最为广泛的一种网络协议。
  • HTTP协议特点:
    • 支持客户端/服务器模式
    • 简单快速
    • 灵活
    • 无连接
    • 无状态

重点内容开始:

1.HTTP请求:

  • 请求行:
    • 请求方法:get/post/put/delete
    • URL
    • 协议及版本:HTTP1.0
  • 请求头:
    • 用来指定客户端传递给服务器的数据类型(Content-Type)
    • 常见的是JSON/表单类型
  • 请求体:
    • 简单的可以理解为入参的值
    • get请求没有请求体,delete也没有
    • 有请求体的一般是post和put类型

2.HTTP响应:

  • 响应行(状态行):1xx/2xx/3xx/4xx/5xx
    • 值得关注的是401和403:
      • 401:Unauthorized,简单解释:用户没有得到授权(可能是账号、密码等错误)
      • 403:Forbidden,简单解释:用户得到授权(但没有指定接口的权限),就是说虽然有账号密码,但是权限不够,不能访问所有接口
  • 响应头:
    • 响应头用于描述服务器的基本信息,以及数据的描述,服务器通过这些数据的描述信息,可以通知客户端如何处理响应数据
  • 响应体:
    • 响应体就是响应的消息体,数据可以是普通文本、XML、JSON、HTML源码

3.URL:

概念:统一资源定位符。是互联网上标准资源的地址,HTTP使用URL来建立连接
和传输数据。

URL格式:

  • 1.协议:http/https
  • 2.域名或IP
  • 3.端口号:默认端口号可以省略,值得注意的是
    • http:默认端口80
    • https:默认端口443
  • 4.资源路径:path
  • 5.参数:
    • ?:?后面的内容服务器不做解析,为参数内容
    • &:需要传递多个参数时,使用&拼接,比如:name=zhangsan&age=20

接口规范:

目的:为了让前后端开发人员更好的配合,提升工作效率。

1.传统接口风格:

2.Restfull风格接口:

说明:Restfull只是定义的一个设计方式,并非标准

3.接口文档(API)解析:

  • 请求:
    • 请求方法
    • 请求地址
    • 请求参数
      • 请求头
      • 请求体
  • 响应:
    • 状态码
    • 响应数据

至此,接口及HTTP协议介绍完毕,可自行扩展。下面一起进入Jmeter的世界。

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表回复