2010-02-11 3 views
3

Недавно я унаследовал проекты с хорошим размером около 100 тыс. Строк кода и хотел бы узнать, какой код фактически выполняется. Я нашел несколько подпрограмм, которые вообще не вызываются, и ищет быстрый и автоматический способ изучения уровня бизнеса, чтобы узнать, какой другой код может быть реорганизован быстро.Кодовое покрытие ASP.NET

Это веб-сайт ASP.NET с кодовым названием VB.NET и бизнес-слоем.

+0

Аналогичный вопрос для справки: http://stackoverflow.com/questions/71518/is-there-a-custom-fxcop-rule-that-will-detect-unused-public-methods/71929 –

ответ

4

Мне лично нравится ReSharper и его функциональность «Найти все возможности». Существует несколько дополнительных опций, но по существу он может довольно быстро найти все места, где используется конкретный блок (функция, класс, интерфейс).

Я считаю, что вы немного сбиваете с толку понятие «Покрытие кода», обычно понимается процент кода, который покрывается тестовыми примерами (автоматизированные модульные тесты), и это можно легко определить с помощью множества инструментов, например. NCover или MS Test в некоторых версиях Visual Studio.

+1

Не говоря уже о том, resharper автоматически выдает «мертвый код». – womp

3

Вы можете использовать NDepend - это инструмент статического анализа со встроенным языком запросов, который позволит вам искать и находить классы и методы, которые не используются в кодовой базе. См. this article для получения некоторых подробностей о том, как этого достичь.

Есть также severalothersimilar ВОПРОСЫ ВОПРОСОВ на эту тему с хорошими ответами.

1

TestDriven хорошо интегрируется с Visual Studio и имеет возможность запускать проект в режиме «охвата кода».

Это даст вам приятную статистику о том, какие строки кода выполняются (я использовал его для анализа того, какая часть кода проверяется моим модулем).

1

Существует также nCove r - имеет как путь, так и базовый охват.