Есть ли бесплатный инструмент для покрытия кода, подходящий для использования с .NET 4 и NUnit?
Есть ли бесплатный инструмент для покрытия кода, подходящий для использования с .NET 4 и NUnit, который выполняется из командной строки (и, следовательно, подходит для использования на сервере сборки)?
Обратите внимание, что любые инструменты, требующие выпусков Visual Studio выше Professional, не подходят в этом случае.
Я задаю этот вопрос, потому что я не могу заставить NCover 1.5.8 работать с NUnit 2.5.5 в приложении .NET 4 С#. Я могу запустить модульные тесты, и я могу создать файл Coverage.Xml, но он пуст - он не содержит точек последовательности. После многих исследований я пришел к выводу, что это связано с тем, что NCover 1.5.8 просто не работает с .NET 4. Однако, если вы знаете лучше, не стесняйтесь ответить на этот вопрос вопрос от другого пользователя.
Ответы
Ответ 1
Существует PartCover И две вилки обложек,
Sharpcover здесь
И Partcover-fork здесь
Все кажется несуществующим. Не уверен в совместимости с .net 4, но partcover работает нормально с кодом 3.5. Мне бы хотелось, чтобы кто-то их подбирал.
edit Добавьте еще один элемент в микс. С охватом .net 4 как намерение http://wiki.github.com/sawilde/partcover.net4/
Ответ 2
В течение некоторого времени NCover занимала нишу покрытия кода для рынка .NET, вероятно, с тех пор, как она впервые появилась в коммерческих целях. Я подозреваю, что проблема в том, что старая бесплатная версия была скомпилирована для .NET 2, а .NET 4 достаточно отличается от старого NCover теперь не будет работать правильно.
Для того, что стоит, NCover 3 кажется наиболее жизнеспособным вариантом. По общему признанию, это не бесплатно, но стоимость не так уж плохо для классической версии. Я недавно тестировал его, и он отлично работал с приложением .NET 4. И это намного дешевле, чем версия более высокого уровня для Visual Studio.
Ответ 3
FYI: PartCover теперь поддерживает .NET 4.0
Ответ 4
Я думаю, что короткий ответ на этот вопрос - "Нет".
Я узнал, что можно получить NCover 1.5.8, работая с небольшим взломом *, но кажется, что там нет ничего свободного, который поддерживает .NET 4. Если вы найдете иначе, прокомментируйте это сообщение или вопрос, и я с радостью приму более подходящий ответ.
(*) "Фокус в том, чтобы установить переменную окружения: COMPLUS_ProfAPI_ProfilerCompatibilitySetting = EnableV2Profiler"
-Jamie Cansdale