asynchronous - 测试 MQTT 行为和发出的事件
问题描述
我需要测试 MQTT 发出的 MQTT 行为和事件。例如,每当我(模拟设备)发布到 MQTT 时,处理程序就会被它使用有效的参数调用(用 iex 测试过,但需要自动化该过程)并且我对数据执行一些操作。
脚步:
- 通过 docker 容器安装 mqqt
- 在我的 elixir 项目中添加了乌龟依赖项
- 并添加了基本的监听器
- 并在控制台中尝试并成功收听
Tortoise.publish(:client_id, "d", "my msg" , qos: 0).
注意:我尝试使用mock
和mox
库进行侦听但无法捕获呼叫事件
问题/问题: MQTT侦听事件(某些设备将事件发布到 MQTT 服务器)并且 MQTT 调用与其关联的 elixir 侦听器。我需要测试这种行为:假设侦听器在 10 秒内被 MQTT 调用。如何在我启动发布到 MQTT 后的 10 秒内(使用正确的参数)在测试用例中检查此方法/侦听器已被调用
解决方案
推荐阅读
- sql-server - 计算 SQL 中每条记录发生事件以来的滚动时间
- vue.js - Vue.js。我无法将数据传输到对象
- javascript - Promise 中的返回值
- linux - 无论父文件夹名称如何,查找和排序唯一文件名
- javascript - 使用 Angular 库构建项目时出现问题。ng serve 在本地工作正常 错误消息是请添加 @NgModule 注释
- java - Webview 有时会显示空白页
- angular - mat-paginator 的最后一个或第一个按钮上是否有 EventListener?
- java - 使用服务帐号访问包含外部数据源的 BigQuery 表
- python - 使用标签 '{{value | 返回模型中的第一张图像 第一的}}'
- angular - 使用 rxjs 观察 angular 4 中数组的变化