Postman v8.5 以上的版本支持 Websocket 接口测试了。可能有的小伙伴对 WebSocket 不熟,这里来介绍下:
WebSocket 协议提供了一种在客户端和服务器之间通过持久连接交换数据的方式。数据可以在两个方向上传递,延迟和开销都很低,而且不会中断连接。WebSocket 提供了一个双向、全双工的通信通道,通过单个 TCP 套接字连接在 HTTP 上运行。这意味着服务器可以独立地向客户端发送数据,而无需客户端请求,反之亦然。
Postman 支持原始的 WebSocket 和 Socket.IO。Socket.IO 是最流行的库之一,可实现事件驱动、双向、实时通信,用 WebSocket 作为其传输层。
创建 WebSocket 请求
点击 New 按钮,在弹出框中选择 WebSocket Request。
填入 WebSocket 的地址。
如果用的是 Socket.IO,切换成 Socket.IO。
点击 Connect 按钮。如果连接成功,在 Message 中会有成功的信息。
发送信息
在 Message 框中输入要发送的信息。点 Send 按钮发送。在底部点Message 框会显示发送的信息和接收到的信息。⬆️ 的是发送的信息。⬇️ 的是接收到的信息。
服务端用的是 Node.js。核心代码如下:
const express = require('express')
const app = express()
const expressWs = require('express-ws')(app)
app.ws('/echo', function(ws, req) {
ws.on('message', function(msg) {
ws.send(`Got message: ${msg}`);
})
})
以上就是在 Postman 进行 WebSocket 接口测试的方法。
比 Postman 更好用的 API 工具:Apifox
我们学习了在 Postman 进行 WebSocket 接口测试,虽然 Postman 被广泛用于 API 调试,但它只解决了 Web 开发中 API 管理这个大难题的一小部分。更多的问题还有待解决,比如在多个工具之间频繁切换(API 设计工具 Swagger、API 测试工具 JMeter)经常会导致数据不一致和团队协作低效率。
问题来了 ,是否有一个平台可以让前端、后端和测试人员在 API 项目上高效地协同工作呢?
有的,那就是:Apifox。
Apifox 是一个比 Postman 更强大的接口测试工具,Apifox = Postman + Swagger + Mock + JMeter。它支持 HTTP\HTTP2、Websocket、Dubbo、gRPC 等众多协议,这使得它成为了一个非常全面的接口测试工具,所以强烈推荐去下载体验!
首先在 Apifox 中新建一个 HTTP 项目,然后在项目中添加 WebSocket 接口。
接着输入 WebSocket 的服务端 URL,例如:ws://localhost:3000
,然后保存并填写接口名称,然后确定即可。
点击“Message 选项”然后写入“你好啊,我是 Apifox”,然后点击发送,你会看到服务端和其它客户端都接收到了信息,非常方便,快去试试吧!
Apifox 与 Postman 的对比
Apifox | Postman |
---|---|
Apifox 是一个基于云的平台,允许开发人员从任何位置访问并测试其 API,无需在计算机上安装任何软件。当然 Apifox 也为主流操作系统提供了客户端版本。 | Postman 是一个必须安装在计算机上的独立应用程序,这可能限制了要从多个位置工作的开发人员的可访问性。 |
Apifox 提供了一个视觉上吸引人且易于使用的界面,使开发人员能够轻松调试接口和生成文档。 | Postman 具有更复杂的界面,需要以代码为重点,这可能提高了部分开发者的使用门槛。 |
Apifox 还提供了协作功能和团队管理,允许开发人员和他人共享测试和接口文档,并共同处理项目。 | Postman 可能会消耗大量资源,尤其是在处理大量数据集时可能会减慢计算机的速度,这可能会对需要运行多个测试或者使用大型 API 集合的开发人员造成挑战。 |
Apifox 提供了无限的自定义选项配置,并且更加灵活。 | Postman 提供了比较有限的自定义选项,例如自定义外部变量,响应头 Header 以及脚本。 |
与 Postman 相比,Apifox 解决了在多个工具间频繁切导致的数据不一致问题,让一个 Apifox 即可完成 API 文档、API 调试、API Mock、API 自动化测试等工作。
Apifox 还提供了更易于使用的可视化界面,使开发人员能够轻松调试接口和生成文档,使得开发人员和他人可以方便地共享测试和接口文档,共同处理项目。
与只支持有限自定义配置项的 Postman 对比,Apifox 提供了无限的自定义选项配置,更加灵活。对于那些想要使用新工具去提升开发水平的团队来说,Apifox 一定是个明智之选。
知识扩展: