![](/img/trans.png)
[英]Is there an easy way to use asserts in Python to check for results printed on screen
[英]“canonical” way to use logging for Python asserts
在下面的代碼中, assert
在單元測試之外使用:
import logging
if __name__ == "__main__":
logging.basicConfig(format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", level=logging.INFO)
logger = logging.getLogger(__name__)
logger.info("info level")
assert 1 == 0
打印如下:
2016-02-16 14:56:58,445 - __main__ - INFO - info level
Traceback (most recent call last):
File "logtest.py", line 7, in <module>
assert 1 == 0
AssertionError
什么是“規范”的方式來使用帶時間戳的日志記錄格式AssertionError
由隆起assert
(可能無需重寫每個assert
在代碼中)?
提出了許多類似的問題,主要處理單元測試環境中的asserts
......謝謝
當您處理記錄異常時,您可以在try except
中使用可能出錯的代碼,然后記錄異常,例如:
try:
assert 1 == 0
except AssertionError as err:
logger.exception("My assert failed :( ")
raise err
然后它會記錄:
2016-02-16 15:29:43,009 - __main__ - INFO - info level
2016-02-16 15:29:43,009 - __main__ - ERROR - My assert failed :(
Traceback (most recent call last):
File "/home/james/PycharmProjects/scratchyard/test_time.py", line 8, in <module>
assert 1 == 0
AssertionError
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.