Postman 接口测试详解

server/2024/12/21 6:51:46/

Postman 接口测试详解

      • Postman 接口测试详解
      • 1. Postman 基础知识
        • 1.1 什么是 Postman?
        • 1.2 Postman 的主要功能
      • 2. 安装与设置
        • 2.1 安装 Postman
        • 2.2 创建 Postman 账户
      • 3. Postman 的基本操作
        • 3.1 创建和发送请求
        • 3.2 解析响应数据
        • 3.3 使用环境和变量
      • 4. 进阶功能
        • 4.1 编写测试脚本
        • 4.2 使用集合
        • 4.3 使用 Mock 服务器
      • 5. 常见问题和解决方案
        • 5.1 请求失败
        • 5.2 环境变量无效
        • 5.3 测试脚本失败
      • 6. 实战案例
        • 6.1 创建一个简单的 API 测试集合
      • 7. 总结

Postman 接口测试详解

Postman 是一个强大的 API 测试工具,广泛应用于开发和测试阶段。它允许开发人员和测试人员通过图形化界面设计、发送 HTTP 请求,并对返回的响应进行验证。本文将详细介绍 Postman 的使用方法,覆盖接口测试的各个方面,包括基础操作、进阶技巧、常见问题和最佳实践等。


1. Postman 基础知识

1.1 什么是 Postman?

Postman 是一个功能丰富的 API 开发和测试工具,提供了一个直观的用户界面,用于创建、测试和管理 API 请求。它支持多种协议(如 HTTP、HTTPS)和方法(如 GET、POST、PUT、DELETE)。

1.2 Postman 的主要功能
  • 请求构造:可以创建和发送各种类型的 HTTP 请求。
  • 响应解析:查看响应数据,检查状态码、响应时间等信息。
  • 测试脚本:编写测试脚本验证接口的功能。
  • 环境管理:管理不同的环境和配置,例如开发、测试和生产环境。
  • 集合管理:组织和运行多个 API 请求集合。

2. 安装与设置

2.1 安装 Postman
  1. 下载:访问 Postman 官网 下载适用于你操作系统的版本。
  2. 安装:根据系统类型执行安装程序。
  3. 启动:安装完成后启动 Postman 应用。
2.2 创建 Postman 账户
  • 注册/登录:启动 Postman 后,你可以选择注册一个 Postman 账户或使用已有账户登录。账户功能包括同步数据、分享请求等。

3. Postman 的基本操作

3.1 创建和发送请求
  1. 新建请求

    • 点击左侧菜单中的 “New” 按钮,然后选择 “Request”。
    • 输入请求的名称和描述,并选择一个集合或创建新集合来保存请求。
  2. 设置请求

    • 请求方法:选择 HTTP 方法(如 GET、POST、PUT、DELETE)。
    • 请求 URL:在地址栏输入 API 端点的 URL。
    • 请求头:添加请求头信息(例如 Content-Type)。
    • 请求体:对于 POST 或 PUT 请求,配置请求体数据。
  3. 发送请求

    • 点击 “Send” 按钮发送请求。
    • 查看响应面板中的状态码、响应时间和返回数据。

示例

假设我们有一个 API 端点 https://jsonplaceholder.typicode.com/posts,我们可以创建一个 GET 请求来获取所有帖子:

  • 选择 GET 方法。
  • 输入 URL:https://jsonplaceholder.typicode.com/posts
  • 点击 “Send”。
  • 查看响应数据。
3.2 解析响应数据
  • 状态码:检查响应状态码(如 200、404、500),确认请求是否成功。
  • 响应体:查看返回的数据,支持 JSON、XML、HTML 等格式。
  • 响应时间:检查响应时间,评估接口性能。

示例

对于上述请求,响应数据可能如下:

[{"userId": 1,"id": 1,"title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit","body": "quia et suscipit\nsuscipit...reprehenderit"},...
]
3.3 使用环境和变量

环境变量允许你在不同的环境(如开发、测试、生产)之间切换,而不需要更改请求 URL 和其他设置。

  1. 创建环境

    • 点击右上角的 “Environments” 图标。
    • 选择 “Manage Environments”。
    • 创建新环境并添加变量(如 baseUrl)。
  2. 使用变量

    • 在请求中使用变量(例如 {{baseUrl}}/posts)。

示例

创建一个名为 “Development” 的环境,并添加变量 baseUrl,设置值为 https://jsonplaceholder.typicode.com。然后在请求 URL 中使用 {{baseUrl}}/posts


4. 进阶功能

4.1 编写测试脚本

Postman 允许你在请求后执行测试脚本,以验证响应是否符合预期。

  1. 添加测试脚本

    • 在请求的 “Tests” 标签中编写测试脚本。
  2. 常见测试脚本

    • 检查状态码
      pm.test("Status code is 200", function () {pm.response.to.have.status(200);
      });
      
    • 验证 JSON 响应
      pm.test("Response should be a JSON object", function () {pm.response.to.be.json;
      });
      pm.test("Response should have userId", function () {pm.response.to.have.jsonBody('userId');
      });
      
    • 响应时间检查
      pm.test("Response time is less than 200ms", function () {pm.response.to.have.responseTime.below(200);
      });
      
4.2 使用集合

集合是组织和管理请求的容器,可以将相关请求分组在一起,方便管理和执行。

  1. 创建集合

    • 在左侧栏中点击 “Collections”。
    • 点击 “New Collection” 创建新的集合,并添加描述。
  2. 添加请求到集合

    • 在创建请求时,选择要保存的集合。
    • 请求将保存在指定的集合中。
  3. 运行集合

    • 点击集合名称,选择 “Run”。
    • 使用 Collection Runner 运行集合中的所有请求,并查看测试结果。

示例

创建一个名为 “User API” 的集合,并将获取用户和创建用户的请求添加到该集合。使用 Collection Runner 执行所有请求并生成报告。

4.3 使用 Mock 服务器

Mock 服务器允许你模拟 API 接口的响应,进行接口开发和测试。

  1. 创建 Mock 服务器

    • 在 Postman 中点击 “Mock Servers”。
    • 创建新的 Mock 服务器,并为其配置请求和响应。
  2. 使用 Mock 服务器

    • 将 Mock 服务器 URL 替换为实际 API 端点进行测试。

示例

创建一个 Mock 服务器,配置 /users 请求返回预定义的用户数据。使用 Mock 服务器 URL 进行请求测试。


5. 常见问题和解决方案

5.1 请求失败

问题:发送请求后,出现错误或无响应。

解决方案

  • 检查 URL:确保 URL 格式正确。
  • 检查网络:确认网络连接正常。
  • 查看日志:检查 Postman 控制台日志,了解错误详情。
5.2 环境变量无效

问题:环境变量在请求中未被替换。

解决方案

  • 检查变量名:确保变量名与环境变量一致。
  • 选择环境:确认在请求中选择了正确的环境。
5.3 测试脚本失败

问题:测试脚本执行错误或测试失败。

解决方案

  • 调试脚本:使用 console.log 调试测试脚本。
  • 检查 API 文档:确保测试脚本与 API 文档中的规范一致。

6. 实战案例

6.1 创建一个简单的 API 测试集合
  1. 创建集合

    • 创建一个名为 “Simple API Tests” 的集合。
    • 添加 GET 请求 /api/posts 和 POST 请求 /api/posts
  2. 编写测试脚本

    • 对 GET 请求编写测试脚本,验证响应状态码和数据格式。
    • 对 POST 请求编写测试脚本,验证数据创建和响应内容。

示例

GET 请求测试脚本

pm.test("Status code is 200", function () {pm.response.to.have.status(200);
});
pm.test("Response should be JSON", function () {pm.response.to.be.json;
});

POST 请求测试脚本

pm.test("Status code is 201", function () {pm.response.to.have.status(201);
});
pm.test("Response should contain ID", function () {pm.response.to.have.jsonBody('id');
});

7. 总结

Postman 是一个功能强大的 API 测试工具,能够显著提高 API 开发和测试的效率



http://www.ppmy.cn/server/95744.html

相关文章

Python学习笔记51:暂停篇

随便写点 最近因为公司项目的原因,学习进度变慢很多,但是也勉强支撑着把小游戏的项目写了个大概,其实后续很多的功能基本都是慢慢添加就可以,掌握了函数的调用,磕磕碰碰终究还是能把功能写好的,可能就是代…

计算机基础(Windows 10+Office 2016)教程 —— 第5章 文档编辑软件Word 2016(上)

第5章 文档编辑软件Word 2016 5.1 Word 2016入门5.1.1 Word 2016 简介5.1.2 Word 2016 的启动5.1.3 Word 2016 的窗口组成5.1.4 Word 2016 的视图方式5.1.5 Word 2016 的文档操作5.1.6 Word 2016 的退出 5.2 Word 2016的文本编辑5.2.1 输入文本5.2.3 插入与删除文本5.2.4 复制与…

声临其境!体验阿里云开源音频基座大模型——FunAudioLLM

千等万等,终于还是等来了阿里最新开源的音频基座大模型FunAudioLLM,真不愧是AI届的活菩萨啊,不过,我心心念念的达摩院寻光AI视频创作平台到底什么时候开放啊!! 停止发疯,进入正题。。。 引言 …

Linux 中的特殊文件权限:SUID、GUID 和 Sticky

注: 机翻,未校。 Special File Permissions in Linux: SUID, GUID and Sticky Bit You see an s instead of x in the file permissions? Linux has some special file permissions called SUID, GUID and Sticky Bit. Know more about them. 在文件权…

YOLOv8网络轻量化改进之ShuffleNetV2主干

目录 一、理论模型 二、代码修改 一、理论模型 首先是shuffleNet网络的理论介绍部分 论文地址:1807.11164 (arxiv.org) 这里是shufflenetv2网络的主要模块的结构,在网络结构中,通过步长来选择这两种不同的模块。步长为1的时候,对应模块c,步长为2的时候对应模块d。 二、…

javaSE基础

一.异常 异常在Java中用Exception来表示,父类是Throwable,与其平级的是Error(Error错误,程序员无法处理,属于JVM级别的错误) 程序员可以处理异常,如果不处理,JVM会帮忙处理,即暴力终止该程序的运行 在Java中,异常大体上分为两种: 1.None - RuntimeException: 非…

【数据结构进阶】手撕红黑树

🔥个人主页: Forcible Bug Maker 🔥专栏: C || 数据结构 目录 🌈前言🔥红黑树的概念🔥手撕红黑树红黑树结点的定义红黑树主体需要实现的成员函数红黑树的插入findEmpty和Size拷贝构造析构函数和…

C# 串口控制 校验

1. 串口控制 using System; using System.IO.Ports; using System.Windows.Forms;namespace 串口控制 {public partial class Form1 : Form{//device1const byte DeviceOpen1 0x01;const byte DeviceClose1 0x81;//device2const byte DeviceOpen2 0x02;const byte DeviceCl…