Django - 在运行所有测试时仅打印错误

时间:2018-04-22 07:31:27

标签: python django testing stdout

我们正在使用python - Django 1.10。我们有超过1000个测试。在运行所有测试时,我们将大量日志发送到stdout。 它主要是在部署上受到伤害 - 我们正在创建一个docker实例并运行我们所有的测试(使用python manage.py测试)。 我想在运行所有测试时以某种方式仅打印错误。 有没有办法做这样的事情?

1 个答案:

答案 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