У меня есть код на python, как показано ниже:
import logging
def method():
value = get_value()
if value is not None:
do_something()
else:
logging.critical("value cannot be None")
Я хотел написать модульный тест, чтобы охватить оба вышеупомянутых сценария.Первый случай успеха был легким.Но для сценария сбоя, как правильно отлавливать, что logging.critical был назван?
Я попытался поместить метод в блок try-кроме, и он работает.
... Mock required function and specify return values ...
try:
method()
except Exception as ex:
import traceback
traceback.format_exc()
Хотя вышеуказанный метод работает, я не думаю, что правильно понял, что logging.critical был вызван, а не вызвано исключение.Как правильно это сделать?