58

我是新手MosquittoMQTT我下载了Mosquitto服务器库,但我不知道如何测试它。

有什么方法可以测试Mosquitto服务器吗?

4

6 回答 6

124

在单独的终端窗口中执行以下操作:

  1. 启动代理:

    mosquitto
    
  2. 启动命令行订阅者:

    mosquitto_sub -v -t 'test/topic'
    
  3. 使用命令行发布者发布测试消息:

    mosquitto_pub -t 'test/topic' -m 'helloWorld'
    

除了在代理终端中查看订阅者和发布者连接消息外,还应在订阅者终端中打印以下内容:

test/topic helloWorld

编辑:

值得指出的是,从 Mosquitto v2.0.0 开始,它默认只会监听环回接口上的连接。如果您想从安装它的机器以外的机器访问代理,您需要编辑配置文件(并使用-c选项将其传递给代理,例如mosquitto -c /path/to/mosquitto.conf)以启用在其他接口上的侦听。详细信息可以在此处的 v2.0.0 发行说明中找到

于 2014-11-03T14:37:30.380 回答
18

启动 Mosquitto Broker
打开终端并输入

mosquitto_sub -h 127.0.0.1 -t topic

打开另一个终端并输入
mosquitto_pub -h 127.0.0.1 -t topic -m "Hello"

现在您可以切换到以前的终端,在那里您可以看到“Hello”消息。一个终端充当发布者,另一个终端充当订阅者。

于 2015-05-13T05:40:41.063 回答
14

要测试并查看您是否可以从外部(VM 或本地机器之外)访问您的 MQTT 服务器,您可以在您的外部机器上安装 MQTT 发布和监控工具之一,例如MQTT-Spy,然后订阅'#"(表示所有主题)。

您可以按照上面他的回答中提到的@hardillb 方法来遵循这一点,并来回测试,例如:

在运行 Mosquitto Server 的机器上, 在此处输入图像描述

在运行 mqtt-spy 的外字机器上, 在此处输入图像描述

我主要提到了 mqtt-spy,因为它是多平台且易于使用的。您真的可以使用任何其他工具。而且据我所知,要运行mosquitto_submosquitto_pub您需要在运行测试的 Linux 机器上安装mosquitto-clients(在我的情况下是 Ubuntu),这可以通过以下方式轻松完成,

sudo apt-get install mosquitto-clients

于 2016-06-08T01:27:13.447 回答
8

如果您使用的是 Windows,请打开命令提示符并输入“ netstat -an ”。

如果您的服务器正在运行,您应该能够看到端口 1883。

cmd显示蚊子端口

如果您无法转到任务管理器 > 服务并从那里启动/重新启动 Mosquitto 服务器。如果你在这里也找不到它,那么你的 Mosquitto 安装还没有成功。

此处链接了使用 Windows / 设置 Mosquitto的更详细教程。

于 2017-03-01T09:22:27.943 回答
1

OP 没有定义测试范围,但是,在投入任何时间进行功能测试之前,应该执行简单(粗略)的“冒烟测试”安装。

如何测试是否安装了应用程序('smoke-test')

登录到mosquitto服务器的命令行并输入:

mosquitto

如果安装了 mosquitto,机器将返回:

 mosquitto version 1.4.8 (build date Wed, date of installation) starting
 Using default config.
 Opening ipv4 listen socket on port 1883
于 2019-05-30T09:59:30.017 回答
0

如果您希望在不安装任何工具的情况下进行基于 GUI 的代理测试,您可以使用 Hive Mqtt Web 套接字来测试您的Mosquitto服务器

只需访问http://www.hivemq.com/demos/websocket-client/并输入服务器连接详细信息。

如果您已连接,则表示您的服务器配置正确。

您还可以使用此 mqtt Web 套接字测试publish和处理消息subscribe

于 2020-07-01T07:19:13.080 回答