我正在开发C++/CLI中的应用程序,通过串行端口与设备进行通信。并使用MS Test对其进行测试。我只是在阅读有关模拟对象的知识,只是从概念上理解它。我在单元测试中面临很多挑战,主要是因为我用来通过串口将数据发送到我的应用程序的模拟器行为有特定的方式,我不能让它改变它的行为。我可以使用模拟对象来模拟串口吗?
我想知道的是:
- 我可以使用模拟对象来模拟串行端口的行为吗?它的输入缓冲区?
- 我可以使用模拟对象来更改串行端口行为(即假装端口被阻止)。
- 可以嘲笑更多的基本类(例如,我想测试我的代码分配一个数组的一部分,我可以得到模拟假装内存分配失败,由于内存不足)
- 是Rhino Mocks适合模拟C++/CLI应用程序?
- 任何其他嘲笑框架(优先免费,但开放付费),在你的经验是好的这项任务?
- 这些是否与MS Test兼容?
当然不是你可以嘲笑它。但是,如果没有其行为的** **完整规范,你将不能够以模拟真实的设备进行通信的所有细微之处。在大多数情况下,这并不重要,但我不能判断你的情况。 – 2011-04-21 03:26:08
我刚才提出这个模块https://serialmock.readthedocs.org(有点晚了,我知道......但我仍然需要这一点,并无法找到任何东西,做到这一点) – 2017-04-10 19:29:03