我有一个程序在控制台上产生彩色输出,我想写一个测试,确保输出正确。
在类Unix系统上,这是使用ANSI escape codes完成的,因此捕获输出流足以检查渲染的颜色。
在Windows上,我使用colorama将ANSI代码转换为Win32 API调用。但是,我仍然希望确保生产出正确的颜色。
如何以编程方式捕获Windows控制台的内容,以将其与预期输出进行比较?
任何格式都可以,只要内容不会发生虚假变化 - HTML,图片,PDF等。
有问题的测试需要在AppVeyor上运行,因此它可能没有准备好图形环境。