我使用標準的python日誌記錄模塊。當我打電話給python manage.py test
時,我想在所有測試運行之前禁用日誌記錄。是否有信號或其他類型的鉤子可以用來調用logging.disable?或者有沒有其他一些方法可以在python manage.py test
運行時禁用日誌記錄?在manage.py測試期間禁用日誌記錄?
回答
我知道的唯一方法就是編輯manage.py
本身......當然不是很優雅,但至少它應該讓你到你需要的地方。
我打了補丁test_extensions也這樣做。
作爲一個很不錯的選擇,你可以運行在您的設置測試時,禁用日誌文件是這樣的:
if 'test' in sys.argv:
logger.removeHandler(handler)
logger.setLevel(logging.ERROR)
謝謝 - 像魅力一樣工作! – 2010-12-16 10:51:59
我更喜歡有獨立settings_test.py,在那裏我可以刪除不必要的應用程序,中間件等運行測試測試過程中我不需要的東西。我可以通過這種方式在這裏禁用日誌輸出也:
from settings import *
import logging
# direct all logging output to nowhere
class NullHandler(logging.Handler):
def emit(self, record):
pass
logging.getLogger().addHandler(NullHandler())
./manage.py:error:no such option:--logging-clear-handlers – 2012-12-18 11:21:45
確實,我沒有指定,但你需要django-nose:https://github.com/jbalogh/django-鼻子和https://nose.readthedocs.org/zh-CN/latest/usage.html?highlight=#cmdoption--logging-clear-handlers – Rmatt 2012-12-19 17:52:04
最簡單的事情:
import logging
class MyTestClass(TestCase):
def setUp(self):
logging.disable(logging.CRITICAL)
這不需要編輯,打補丁,安裝額外的,等等。所有日誌記錄完全關閉。
如果使用django-nose,那麼你可以下面的代碼片段運行./manage.py test
NOSE_ARGS = [
'--nologcapture'
]
- 1. 在單元測試期間禁用python日誌記錄
- 2. 在測試執行期間更改日誌記錄級別
- 3. nHibernate在單元測試期間輸出sql日誌記錄
- 4. 禁用Hiera調試日誌記錄
- 5. 禁用n日誌記錄
- 6. 運行單元測試時禁用winston日誌記錄?
- 7. 如何暫時禁用log4net的perf測試日誌記錄?
- 8. 日誌記錄日期時間參數
- 9. 在使用Rails 3.1進行測試期間禁用終端中的SQL日誌記錄? (RSPEC /黃瓜)
- 10. 在neo4j中禁用日誌記錄
- 11. 在PDFBox上禁用日誌記錄
- 12. 在Android中禁用Apptentive日誌記錄
- 13. 在IPB中禁用IP日誌記錄
- 14. 在Laravel中禁用日誌記錄?
- 15. 在hapijs中禁用日誌記錄
- 16. 負載測試日誌記錄
- 17. 通過Gradle測試時記錄日誌
- 18. 在CakePHP 2.x的單元測試期間如何關閉日誌記錄?
- 19. 使用Batik Transcoder禁用日誌記錄?
- 20. 如何在django中禁用南調試日誌記錄?
- 21. SoapUI禁用測試用例的日誌
- 22. 如何在單元測試目標c代碼時禁用日誌記錄
- 23. 如何在運行數據庫遷移期間禁用日誌記錄?
- 24. 使用系統日誌時禁用/啓用日誌記錄
- 25. 禁用PySpark中的INFO日誌記錄
- 26. 從DriverManagerDataSource禁用日誌記錄
- 27. Python APScheduler如何禁用日誌記錄
- 28. laravel禁用查詢日誌記錄
- 29. 如何禁用Hibernate 4.0日誌記錄?
- 30. 禁用ViewExpiredException的日誌記錄
阿當添加到您的
settings.py
文件以禁用日誌輸出,我沒有想到的是(...很明顯嘛) 。謝謝! – 2010-06-13 13:20:33@Eric,不客氣! – 2010-06-13 14:17:43