模拟蓝牙 LE 适配器以进行验收测试

模拟蓝牙 LE 适配器以进行验收测试

我正在开发一个捕获蓝牙 LE 信号的 Android 应用程序,并且我是测试驱动和行为驱动开发的忠实粉丝。所以,我想使用 TDD 和 BDD 来开发我的应用程序。对于TDD来说,用Robolectric测试蓝牙部分是没有问题的。但是,当我想编写行为驱动测试时,我无法测试蓝牙,因为 Android 模拟器不以任何方式支持蓝牙。

因此,我认为一定可以在软件中模拟蓝牙 LE 设备,将模拟的蓝牙广播包转发到虚拟机中运行的 Android X86。

您有任何实施建议吗?我正在考虑一个小型用户空间程序,它通过 TCP 从我的 BDD 框架接收模拟蓝牙信号,然后将这些信号转发到模拟设备。然后设备将它们转发到 Android X86 VM,Android 应用程序捕获并处理信号。

这个帖子看起来很有希望但没有成功。 Qemu 可以模拟蓝牙硬件,但仅支持蓝牙键盘。

我不想使用任何硬件,因为我们的 CI 系统运行在服务器上的 docker 容器中。我没有任何访问服务器的权限。

相关内容