Я выполняю тест, я хочу записать ошибку или исключение в файл журнала, а не на консоль
import logging
import numpy as np
def Log():
logging.basicConfig(level=logging.DEBUG,
format='%(asctime)s %(levelname)-8s %(message)s',
datefmt='%a, %d %b %Y %H:%M:%S',
filename='Arming_Command.log',
filemode='w')
def testCase1():
logging.info('Started Test Case 1')
logging.info("Test case 1 Passed %s",np.testing.assert_equal([4,5], [4,6]),verbose=False)
logging.info('Test Case 1 Completed')
def testCase2():
logging.info('Started Test Case 2')
logging.info("Test case 2 Passed %s",np.testing.assert_equal([4,5], [4,6]),verbose=False)
logging.info('Test Case 2 Completed')
if __name__ == '__main__':
Log()
testCase1()
testCase2()
Приведенный выше код просто печатается в консоли
Traceback (последний вызов был последним): File
"C: /Users/hariom.singh/PycharmProjects/Connect_Pversion/venv/Python_Logging.py",
строка 25, в
Файл testCase1 () "C: /Users/hariom.singh/PycharmProjects/Connect_Pversion/venv/Python_Logging.py",
строка 14, в testCase1
Файл logging.info (файл «Тестовый пример 1 пройден% s», np.testing.assert_equal ([4,5], [4,6]), verbose = False)
"C: \ Users \ hariom.singh \ PycharmProjects \ Connect_Pversion \ venv \ Lib \ сайт-пакеты \ NumPy \ testing_private \ utils.py",
строка 342, в assert_equal
assert_equal (фактический [k], желаемый [k], 'item =% r \ n% s'% (k, err_msg), подробный) Файл
"C: \ Users \ hariom.singh \ PycharmProjects \ Connect_Pversion \ venv \ Lib \ сайт-пакеты \ NumPy \ testing_private \ utils.py",
строка 414, в assert_equal
повысить AssertionError (msg) AssertionError: элементы не равны: item = 1
Фактический: 5 Желаемый: 6
Процесс завершен с кодом выхода 1
Консоль имеет хорошую информацию, но не записывает ее в мой лог-файл
вместо этого я просто вижу в своем лог-файле
Thu, 15 Nov 2018 12:53:13 INFO Started Test Case 1
Вопросы
1) Как захватить информацию в лог-файл
2) Как продолжить выполнение и запись в журнал, даже если есть исключение
в моем случае test Case1 имел исключение, в результате testCase2 не запустился