在使用Nose进行单元测试时抑制Cherrypy的输出
我正在使用cherrypy来搭建一个网络服务器,同时用nose来运行我的单元测试。不过,即使我使用了--nologcapture选项,nose仍然会捕捉到很多调试信息并打印到标准输出,特别是cherrypy的日志信息。这让测试的输出变得很难阅读。
我曾想过:
def setUp(self):
cherrypy.config.update({ "server.logToScreen" : False })
cherrypy.config.update({'log.screen': False})
如果和--nologcapture选项一起使用,应该能抑制这些信息,但显然并没有效果。
有没有人知道怎么去掉这些信息,让测试输出干净整洁呢?
2 个回答
1
我之前在用CherryPy 3.1.2的时候遇到了这个问题。后来我换成了3.2.2版本,结果问题就解决了,而且不需要改任何代码。
4
你没有提到你使用的是哪个版本的CherryPy,但根据你遇到的问题,我猜测你可能在用3.x版本。我认为你需要添加以下配置选项:
cherrypy.config.update({ "environment": "embedded" })
我最近也遇到了同样的问题,当时我在用Twill测试一个CherryPy应用。