Python - Является ли изоляция через общие блоки try плохой? - PullRequest
0 голосов
/ 16 февраля 2011

Скажем, у меня есть какой-то сложный код, в который я вложил блоки try с общим except Exception, e, потому что мне нужно изолировать определенные (иногда неизвестные) сбои от остановки долго работающей программы.

Эти сбои, как правило, не настолько важны, чтобы остановить программу, но я хочу их перехватить, чтобы я мог регистрировать их как ошибки и так далее.Проблема заключается в попытке переопределить определенные исключения, которые СЛЕДУЕТ вызвать сбой программы, а также в попытке реализовать модульные тесты в разделах кода в этих общих блоках try / исключением.Такие вещи, как «assertRaises», на самом деле не работают, так как обнаруживается любая ошибка.

Есть ли лучший способ изолировать части программы на Python от остановки всей программы без использования таких общих блоков try / кроме?Я также хочу стараться держаться подальше от потоков / многопроцессорных / подпроцессов, если это возможно.

1 Ответ

1 голос
/ 16 февраля 2011

Небольшие методы, которые не используют try ... catch, но используются в более крупных методах / функциях, которые заключают их в try ... catch - обычное решение.Это легко позволило бы тестам проверять исключения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...