基于 Trae 和 Postman-MCP-Server 接口自动化测试


前言

在当下 AI 赋能研发全流程的技术迭代浪潮下,接口测试早已脱离传统手动调试、人工逐一对标校验的低效模式,朝着智能化、轻量化、一体化、自动化的方向全面升级,成为保障项目接口稳定兼容、缩短研发迭代周期、规避线上交互故障的核心关键环节。无论是小型趣味实训项目,还是大型企业级业务系统,规范高效的接口测试闭环,都是开发与测试工作中不可或缺的核心刚需。

以往我们开展接口测试,大多依赖纯手动在Postman中逐个录入接口信息、手动配置请求参数、逐轮触发测试请求、人工核对响应结果,不仅重复操作繁杂耗时长,测试效率低下,还极易因人为疏忽出现校验遗漏、结果误判等问题,难以适配快速迭代的项目研发节奏,也无法形成标准化、可复用的自动化测试体系。而随着 Trae 智能化开发 IDE 与 Postman-MCP-Server 工具生态的深度融合,全新的 AI 协同接口自动化测试新范式应运而生,彻底打破了编码开发与接口测试之间的操作壁垒,实现开发、接口生成、测试配置、自动校验全流程无缝衔接。

本文将以经典五子棋业务项目为完整实操案例,全程依托 Trae 开发环境联动 Postman-MCP-Server 工具链,一站式完成五子棋全量业务接口梳理规整、标准化测试接口自动生成、测试用例批量配置、接口请求自动触发、响应数据智能断言校验等全流程实操落地。手把手带大家告别传统人工低效测试模式,快速掌握智能化工具组合的实操用法,从零搭建简易高效、可复用易维护的接口自动化测试体系,既适合技术新手零基础入门接口自动化测试核心逻辑,也能为开发测试从业者优化日常接口测试工作流程、提质增效提供直观可复刻的实操参考。


一、Postman 的基本用法

1. 添加接口

使用 Trae 操作 Postman,在集合中添加接口,需要先切换 Trae 中的已经添加了 Postman-MCP-Server 的智能体,如下:

AI 提示词:

使用 postman mcp, 创建一个新的集合,名称为 gobang 接口测试集合,并将以下接口添加到 gobang 接口测试集合中;

注意:

如果接口带请求头, 一定不能在 postman 中添加请求头, 否则会导致接口调用失败;

如果接口需要传参, 则需要在 postman 中添加请求参数, 并设置参数值;

传参的时候要注意传参的方式, 例如: json, form-data, urlencoded 等;

如果接口需要上传文件, 则需要在 postman 中添加文件上传参数, 并选择文件;

要注意 postman 中接口文件目录, 如果按模块创建子目录, 则要把对应的接口放到子目录中;

注意:AI 在使用 Postman 创建集合或者接口时,可能存在各种各样的问题,可以通过完善提示词的方式,让 AI 执行更加准确;

接口信息:

XML 复制代码
#### 接口描述

支持新用户注册功能,验证密码规则(至少8位,包含字母和数字),注册成功后自动创建用户资料,初始积分、比赛场数、获胜场数均为0。



#### 请求方式

POST



#### 接口地址

`/api/user/register`



#### 请求参数

| 参数名 | 类型 | 是否必须 | 描述 |

| ------ | ---- | -------- | ---- |

| username | String | 是 | 用户名 |

| password | String | 是 | 密码(至少8位,包含字母和数字) |



#### 请求示例

```json

{

  "username": "testuser",

  "password": "test1234"

}

```



#### 响应参数

| 参数名 | 类型 | 描述 |

| ------ | ---- | ---- |

| code | Integer | 响应状态码 |

| message | String | 响应消息 |

| data | Object | 响应数据 |



#### 响应示例

```json

{

  "code": 200,

  "message": "注册成功",

  "data": null

}

```



#### 错误码

| 错误码 | 描述 |

| ------ | ---- |

| 1000 | 用户名已存在 |

| 1001 | 用户名不能为空 |

| 400 | 密码至少8位,包含字母和数字 |

执行结果:

2. 创建环境变量

接口测试项目中通常有一些公共的信息,比如 IP 地址和端口号,不同的接口都使用相同的 IP 地址和端口号,因此可以把 IP 地址和端口抽取出来,作为公共的环境变量,每次访问接口时,都在前面拼接上它,不用每次都写在 url 上;

这样做的优点有两个:

  1. 如果需要改变 IP 地址和端口号,只需要修改环境变量即可,使得接口测试集合更容易维护;

  2. 只需要专注于接口路径,更容易检查路径是否正确;

AI 提示词:

请使用 postman mcp, 为 gobang 接口测试集合创建环境变量, 并设置以下值:

host: http://49.233.162.74:9090

执行结果:

可以看到,环境变量集合以及环境变量也都创建成功,并在接口中正确配置;

运行测试:

可以看到,接口运行返回的状态码和预期相同;

3. 添加断言

前面是创建接口和环境变量,以及手动运行测试的效果。但是接口运行完成后,并没有对接口返回的数据进行校验,包括状态码,返回的数据等;而真正的接口测试是需要对接口运行结果进行校验的,下面演示如何对接口返回内容添加断言。

使用快捷键 Ctrl+Alt+P,或者打开右边框,打开 Postman 的 AI 助手:

AI 提示词:

/api/user/register 接口返回值添加断言,
{

"code": 200,

"message": "注册成功",

"data": null

}
返回值必须包含以上三个字段
code 和 message 必须满足以上返回值
状态码必须为200

在 AI 助手对话框,输入提示词,等待 AI 助手弹窗并点击同意:

可以看到,在 Scripts 标签下,针对接口返回内容的断言脚本添加成功:

运行接口:

接口返回值正确,测试通过;

4. 添加随机参数

测试时,可能需要每次给定的参数都不相同。以注册为例,每次注册的用户名需要和之前都不相同,避免注册失败。

AI提示词

/api/user/register 接口参数
{
"username": "testuser",
"password": "test1234"
}
多次测试注册用户时, 使用固定的用户名, 用户会重复, 注册不成功;

请创建随机的用户名, 最好是使用时间戳加随机字符串的方式, 避免用户名重复, 测试失败。

输入提示词后,生成测试脚本如下:

注意:这次的脚本执行时机是测试前,因此放到了 Pre-req 选项里面,每次生成随机的用户名,避免测试失败;

在接口参数中引用生成的随机用户名:

多次运行,测试均可通过。

5. 处理数据依赖

测试时,多个测试之间可能存在数据依赖。比如登录成功后,通常会保存 Cookie 或者 JWT 令牌。测试其它接口就需要使用到登录时保存的数据。

还是以注册为例,我们还有一个使用已存在的用户名注册的测试,验证注册失败的情况。

在注册成功的测试用例中,我们选择生成随机的用户名,要验证重复注册的情景,也可以选择使用在成功场景下生成的用户名,保证一定能正确测试重复注册的场景。因此这里就存在和一个数据依赖。

AI 提示词

/api/user/register 接口

用户注册-成功: 这个测试使用了随机生成的用户名, 避免用户名重复;

用户注册-用户名已存在: 这个测试为了保证使用的一定是存在的用户名, 需要使用注册成功时生成的用户名.

因此注册成功后,请使用环境变量保存生成的随机用户名, 并在用户名已存在这个测试用引用.

输入提示词后,将生成的用户名保存到环境变量中,生成的脚本如下,

创建的环境变量:

在"用户注册-用户名已存在"测试用例中引用:

至此,数据依赖问题已解决。

6. 添加监控

在实际的测试中,我们不应该一直使用手动测试的方法,去运行测试。而是应该按照一定的周期,运行测试,持续检查接口是否运行正常。这就需要在 Postman 中添加监控。

添加监控的位置如下:

监控设置:

查看监控:

二、接口自动化实战

整体测试思路:

接口文档 ---》测试用例 ---》将用例转换成保存到 Postman 集合中的接口 ---》添加断言 ---》添加监控;

通过添加断言的方式,实现了接口测试;

通过添加监控的方式,实现了自动化;

1. 项目需求文档

五子棋项目接口文档:web-ui-test/gobang-api-mcp-test/01 后端接口文档.md · yzg-test/AI_Test - 码云 - 开源中国

2. 测试用例

测试用例:web-ui-test/gobang-api-mcp-test/01 后端接口文档.md · yzg-test/AI_Test - 码云 - 开源中国

3. 转化为 Postman 中的接口

AI 提示词:

使用 Postman MCP 执行以下操作:

  1. 创建一个新的集合,名称为 gobang 接口测试集合;

  2. 为 gobang 接口测试集合创建环境变量, 并设置以下值: host: http://49.233.162.74:9090;

  3. 根据用户模块, 认证模块, 匹配模块, 游戏模块, 积分模块的测试用例, 分别在 gobang 接口测试集合中创建对应的 postman 子集合, 并将对应的接口添加到对应的子集合中;

  4. 接口名称取测试用例中文档定义的名称;

  5. 按照预期结果添加接口断言;

  6. 获取随机生成的用户名作为重复用户名注册的用户名;

  7. 获取正常登录的接口返回值 data 数据,作为其他接口的 token;

  8. 创建监控, 每天下午 19:00 执行 gobang 接口测试集合中的所有接口;

生成完成后,检查断言,环境变量,均已经添加完成,如下:

可以看到,AI 可以迅速生成大量的接口,并添加断言和环境变量,能够极大程度节省编写接口的时间。

目前 Postman-MCP-Server 没有提供添加监控的功能,需要手动添加;

AI 生成的接口往往不能一步到位,生成的接口还需要调试,有问题的接口,可以参考 Postman 的基本用法去修改接口,完成后添加监控即可。

备注:目前五子棋项目涉及的 stomp/websocket 接口,Postman 还不能很好的支持它们的测试,因此本项目只进行了 HTTP 接口的测试。


总结

本文介绍了 Postman 接口测试的基本用法,以及结合 Trae 和 Postman-MCP-Server 进行接口自动化测试的方法。

相关推荐
弹简特6 小时前
【精通Postman接口测试】04-Postman的CLI命令+Jenkins和Newman+Allure+Jenkins自动化接口持续集成
自动化·jenkins·接口测试·postman
weixin_4196583119 小时前
Postman-MCP-Server 的构建以及在 Trae 中的配置方法
测试工具·postman
测试员周周1 天前
【AI测试系统】第6篇:需求扔进去,3 分钟出测试用例?AI测试系统的 RAG 知识增强实战
人工智能·python·功能测试·测试工具·测试用例
测试员周周1 天前
【AI测试功能2】AI功能测试的“不可确定性“难题与应对思路:从精确断言到统计判定的完整方案
大数据·人工智能·python·功能测试·测试工具·单元测试·测试用例
测试员周周2 天前
【AI测试系统】第5篇:AI 编码工具抛硬币?我们用 LangGraph 做了个“确定性+AI”的测试系统(附自愈架构)
人工智能·python·功能测试·测试工具·架构·langchain·单元测试
弹简特2 天前
【精通Postman接口测试】02-集合变量|环境变量|全局变量,批量运行原来这么简单(附图文+CLI实战)
测试工具·接口测试·postman
DevilSeagull3 天前
电脑上安装的服务会自动消失? 推荐项目: localhostSCmanager. 更好管理你的服务!
测试工具·安全·react·vite·localhost·hono·trpc
弹简特3 天前
【精通Postman接口测试】01-基础理论+安装使用+项目实战+接口关联(万字图文,零基础保姆级)
测试工具·postman·接口关联
武帝为此4 天前
【Selenium 屏幕截图】
python·selenium·测试工具