我们正在使用python - Django 1.10。我们有超过1000个测试。在运行所有测试时,我们将大量日志发送到stdout。 它主要是在部署上受到伤害 - 我们正在创建一个docker实例并运行我们所有的测试(使用python manage.py测试)。 我想在运行所有测试时以某种方式仅打印错误。 有没有办法做这样的事情?
答案 0 :(得分:3)
也许创建一个特定于测试的test_settings.py
,在运行测试时用ERROR
覆盖日志级别。
例如,如果主settings.py
包含:
LOGGING = {
...
'loggers': {
'myapp': {
'handlers': ['console', 'file'],
'level': 'DEBUG',
}
}
}
然后你可以创建一个覆盖日志级别的test_settings.py
。
from settings import *
LOGGING['loggers']['myapp']['level'] = 'ERROR'
然后在运行测试时指定test_settings
。
python manage.py test --settings test_settings