我刚刚开始进行单元测试,而我正在测试的组件有很多方法可以打印到指定的打印机,例如:
我遇到了一个我实际上不想打印的明显问题,但是我需要为这些方法指定一个有效的Windows打印机名称来测试它们的功能。我无法重构我的对象来获取一个我可以模拟的Printer对象,即使我可以,我仍然需要在某个时候对Printer对象进行单元测试,我会遇到同样的问题。
我唯一能想到的是安装一台实际上什么都不做的虚拟打印机。那里的各种PDF打印机都将弹出并询问文件名,因此无法正常工作。我需要的是一个黑洞,我可以发送打印作业。谷歌搜索没有任何希望,所以我想我会问这里,看看测试人群建议我做什么?
任何人都这样做或有任何想法如何处理这种情况?