[英]logging in Django test with verbosity
我正在寻找一种仅当 Django 测试以高详细级别运行时才写入控制台的方法。 例如 - 当我跑步时
python manage.py test -v 3
它会将我的消息记录到控制台,但是,当我运行时
python manage.py test -v 0
它不会记录我的消息。
我尝试在代码中使用logger.info()
但消息根本不显示。
有什么建议吗?
-v
控制测试运行器本身的详细程度(例如:数据库创建等),而不是应用程序日志记录的详细程度。
您真正想要的是更改 django 应用程序本身的日志记录级别,如 日志记录文档中所述。
您可能只想覆盖仅用于测试的日志记录设置,或者您可以使用--debug-mode
将settings.DEBUG
为True
,并在您的 settings.py 中包含特定于调试的配置(这很常见,因为它也开发时有帮助)。
这是如何实现后者的基本示例:
'loggers': {
'': {
'handlers': ['console', 'sentry'],
'level': 'INFO',
},
'myapp': {
'level': 'DEBUG' if DEBUG else 'INFO',
'propagate': True,
},
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.