![]() |
1
12
不完全确定您想做什么,但这可能会有所帮助。 为了模拟打印机(或任何其他外部设备),您应该将对打印机的所有调用封装在接口后面,例如。
然后,所有其他代码必须通过此接口与打印机通信。 然后,您可以实现一个与真实打印机对话的接口版本,以及一个测试时可以使用的假对象等。 伪对象可以很容易地使用模拟框架进行模拟,如 Rhino Mocks Moq ,或者你可以自己实现一个假的。
更新: 所有使用打印机的类将如下所示:
顺便说一句,如果使用IoC容器,则不需要第一个构造函数。然后使用IoC工具注入打印机类。 |
![]() |
2
0
您可以随时暂停打印机进行打印。 您可以使用写入文件的打印机设备。 您可以编写自己的打印设备。 |
![]() |
3
0
另一个解决方案是为自己编写一个LPD应用程序,或者只需监视端口9100,并让Windows打印队列通过9100或515(LPD)将数据路由到“自身”。 |