Инструменты, используемые для поиска исключенных исключений? - PullRequest
3 голосов
/ 20 марта 2009

Я работаю над довольно сложным проектом с открытым исходным кодом ( opensimulator.org ). В настоящее время он занимает около 300 KLOC в C #, и есть ряд мест, где собран код для перехвата и игнорирования исключений, которые в конечном итоге маскируют незаметные ошибки.

Мне интересно, какие существуют инструменты, которые могут создавать отчеты о слишком общем перехвате исключений, а также о том, есть ли инструменты, которые будут регистрировать каждое выброшенное исключение, независимо от того, подавлено оно или нет, для последующего изучения.

Было бы идеально, если бы инструменты могли быть включены в наш скрипт сборки и тестирования CI, чтобы можно было создавать ежедневные отчеты, но это не является обязательным требованием.

Ответы [ 3 ]

2 голосов
/ 20 марта 2009

Хорошо, я согласен с @ John Saunders , но если кода много, вы можете написать простой анализатор или использовать какой-нибудь существующий код, чтобы заменить все проглоченные шаблоны исключений кодом регистрации. Очень просто, как заменить:

catch(Exception ex)
{
}

с:

catch(Exception ex)
{
    System.Diagnostics.Debug.WriteLine(ex.ToString());
}

Обратите внимание, вы также хотели бы проверить на catch (Exception), возможно, просто использовать некоторые регулярные выражения, и это не составит труда. Я понимаю, так как кода много, вам может понадобиться автоматический способ входа в систему. Замените Debug.WriteLine () на то, что вы хотите. Это немного грубо, но просто.

2 голосов
/ 20 марта 2009

Используйте FxCop или функцию анализа кода в Visual Studio Team System Developer Edition.

Кроме того, я нашел ReSharper полезным для этого.

0 голосов
/ 20 марта 2009

В Visual Studio это встроено, читайте о том, как включить его .

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