• Postman接口测试工具详解


    👍 个人网站:【 洛秋小站

    Postman接口测试工具详解

    接口测试是软件测试中的一个重要环节,而Postman作为一款功能强大且用户友好的接口测试工具,得到了广泛应用。本篇博客将详细介绍Postman的使用方法及其在接口测试中的应用。

    一、Postman简介

    Postman是一款用于API开发和测试的工具。它提供了简洁直观的界面,支持HTTP请求的发送和响应查看、测试脚本的编写与执行、环境变量的使用,以及测试集合的管理等功能。Postman不仅适用于开发人员,也适用于测试人员和运维人员,是API测试领域的强力工具。

    二、安装与配置

    1. 安装Postman

    Postman可以在官方页面下载,支持Windows、macOS和Linux系统。下载并安装后,注册并登录Postman账号以便使用云端功能。

    2. 配置Postman

    安装完成后,首次启动Postman时可以选择跳过教程。进入主界面后,可以根据需要配置代理、SSL证书等参数。这些配置可以在“Settings”中找到。

    三、创建和管理请求

    1. 创建请求

    在Postman主界面,点击“New”按钮,然后选择“Request”来创建新的请求。在弹出的对话框中,为请求命名并选择一个已有的集合,或创建一个新的集合来管理该请求。

    2. 配置请求

    在新建的请求界面中,可以选择请求方法(如GET、POST、PUT、DELETE等),并在地址栏中输入请求的URL。例如:

    GET https://jsonplaceholder.typicode.com/posts
    

    3. 添加请求参数

    根据请求类型,可以添加不同的参数:

    • Query Parameters:在URL中添加键值对参数,如?id=1
    • Headers:添加请求头,如Content-Type: application/json
    • Body:添加请求体,适用于POST、PUT等方法,可以选择多种格式,如JSON、Form Data等。

    四、发送请求与查看响应

    1. 发送请求

    配置完请求参数后,点击“Send”按钮即可发送请求。Postman会在下方显示响应的详细信息,包括响应状态码、响应时间、响应头和响应体。

    2. 查看响应

    响应体可以以多种格式显示,如Raw、Preview、Pretty等。Postman支持JSON、HTML、XML等多种格式的响应解析和高亮显示,方便用户阅读和调试。

    五、使用环境变量

    1. 创建环境变量

    环境变量是Postman中的一个强大功能,可以在不同的环境下使用不同的变量值。在主界面中,点击右上角的齿轮图标,然后选择“Manage Environments”。在弹出的对话框中,点击“Add”来创建新的环境,并添加变量。

    2. 使用环境变量

    在请求URL、Headers、Body等地方,可以通过{{variable_name}}的方式引用环境变量。例如:

    GET https://{{base_url}}/posts
    

    3. 切换环境

    在发送请求前,可以在Postman界面右上角的下拉菜单中选择相应的环境,这样请求中引用的变量会自动替换为当前环境下的值。

    六、测试脚本和断言

    1. 编写测试脚本

    Postman支持JavaScript脚本,可以在请求的“Tests”标签中编写测试脚本。例如:

    pm.test("Status code is 200", function () {
        pm.response.to.have.status(200);
    });
    

    2. 使用Chai断言库

    Postman内置了Chai断言库,提供了丰富的断言方法。例如:

    pm.test("Response time is less than 200ms", function () {
        pm.expect(pm.response.responseTime).to.be.below(200);
    });
    

    七、集合与运行集合

    1. 创建集合

    集合是Postman中管理请求的方式,可以将多个相关请求组织在一起。在主界面中,点击“New”按钮,然后选择“Collection”来创建新的集合。

    2. 运行集合

    Postman提供了“Collection Runner”工具,可以批量运行集合中的请求,并查看每个请求的执行结果。在主界面中,点击“Runner”按钮,选择要运行的集合,然后点击“Start Run”按钮。

    3. 使用数据驱动测试

    Postman支持数据驱动测试,可以通过导入CSV或JSON文件,将数据集应用到集合中的请求。具体操作是在“Collection Runner”中,选择“Data File”并导入数据文件。

    八、Postman与CI/CD集成

    1. 使用Newman

    Newman是Postman的命令行运行工具,可以在CI/CD管道中执行Postman集合。在终端中安装Newman:

    npm install -g newman
    

    2. 运行Postman集合

    使用Newman运行Postman集合的命令如下:

    newman run collection.json
    

    可以将该命令添加到CI/CD管道中,实现自动化测试。

    九、实践案例:测试一个RESTful API

    1. 准备工作

    我们将使用JSONPlaceholder提供的RESTful API进行测试。首先,创建一个新的Postman集合,并添加以下请求:

    2. GET请求

    GET https://jsonplaceholder.typicode.com/posts
    

    测试脚本:

    pm.test("Status code is 200", function () {
        pm.response.to.have.status(200);
    });
    

    3. POST请求

    POST https://jsonplaceholder.typicode.com/posts
    

    请求体(JSON格式):

    {
        "title": "foo",
        "body": "bar",
        "userId": 1
    }
    

    测试脚本:

    pm.test("Status code is 201", function () {
        pm.response.to.have.status(201);
    });
    pm.test("Response has correct title", function () {
        var jsonData = pm.response.json();
        pm.expect(jsonData.title).to.eql("foo");
    });
    

    4. PUT请求

    PUT https://jsonplaceholder.typicode.com/posts/1
    

    请求体(JSON格式):

    {
        "id": 1,
        "title": "foo updated",
        "body": "bar updated",
        "userId": 1
    }
    

    测试脚本:

    pm.test("Status code is 200", function () {
        pm.response.to.have.status(200);
    });
    pm.test("Response has updated title", function () {
        var jsonData = pm.response.json();
        pm.expect(jsonData.title).to.eql("foo updated");
    });
    

    5. DELETE请求

    DELETE https://jsonplaceholder.typicode.com/posts/1
    

    测试脚本:

    pm.test("Status code is 200", function () {
        pm.response.to.have.status(200);
    });
    

    十、总结

    Postman作为一款功能强大的接口测试工具,极大地方便了API的开发和测试工作。通过详细了解Postman的各项功能,我们可以更高效地进行接口测试,提高软件的质量和可靠性。在实际工作中,结合CI/CD管道,实现自动化测试,能够进一步提升开发效率和质量保证水平。

    希望通过本篇博客的介绍,大家能够熟练掌握Postman的使用方法,并在实际工作中得心应手地进行接口测试。

    👉 最后,愿大家都可以解决工作中和生活中遇到的难题,剑锋所指,所向披靡~

  • 相关阅读:
    Spring Cloud 之 GateWay简介及简单DEMO的搭建
    Dell戴尔笔记本外星人Alienware x15 R2原装出厂Windows11系统21H2
    x265线程池机制和并行编码机制分析
    c语言的数据结构:找环状链表入口处
    一篇适合躺收藏夹的 Nexus3 搭建 NuGet&Docker 私有库的安装使用总结
    Stream
    Verilog语法速成2
    Redis概述及常用数据类型
    vue3封装Axios库的 API 请求并使用拦截器来处理请求和响应
    vs工程配置
  • 原文地址:https://blog.csdn.net/weixin_40055370/article/details/140362516