У меня есть специальная специализация класса Python unittest.TestCase
, которая включает автоматическое ведение журнала и предоставляет настраиваемые методы проверки бизнеса для использования в большом количестве вариаций пользовательских сценариев тестирования.
Мне нужна специальная версияUnittest.TestCase.fail (...) Python, который может работать с той же строкой сообщения, что и регистратор, а не с форматером.
Я хочу избежать необходимости определять две версии моей строки сообщения следующим образом:
def verifySomething(self, p_one:str, p_two:str):
if self.someClass.some_command():
self.test_result = TestResult.PASSED
message = "my custom message : %s and %s - %s"
self.logger.info(message, p_one, p_two, self.test_result)
else:
self.test_result = TestResult.FAILED
message = "my custom message : {} and {} - {}".format(p_one, p_two, self.test_result)
self.fail(message)
... и вместо этого сделайте что-то подобное,
def verifySomething(self, p_one:str, p_two:str):
message = "my custom message : %s and %s - %s"
if self.someClass.some_command():
self.test_result = TestResult.PASSED
self.logger.info(message, p_one, p_two, self.test_result)
else:
self.test_result = TestResult.FAILED
self.fail(message, p_one, p_two, self.test_result)
Примечание : это упрощенный пример, и я пропустил Pre & PostУсловия для краткости.
Сводка : Как написать пользовательскую функцию сбоя, которая переопределяет Python для unittest.TestCase.fail (...), чтобы сделать это?