Почему Visual Studio говорит «Покрытие кода не включено для этого теста», когда он включен? - PullRequest
11 голосов
/ 11 сентября 2009

В Visual Studio я только что создал простой модульный тест для проверки написанного мною метода. Я хотел проверить покрытие кода, но окно «Покрытие кода» только когда-либо утверждает, что «Покрытие кода не включено для этого тестового прогона». Зачем? Примечание:

  1. Я уже следовал инструкциям на этой странице , т. Е. В конфигурации теста действительно проверены соответствующие сборки на странице параметров покрытия кода.
  2. Я нажал «Выполнить тест», , а не «Отладочный тест», что, как утверждают некоторые источники, вызывает это.
  3. Я попытался запустить тест с текущей конфигурацией сборки, установленной на "Debug" или "Release"; ни один не работает.
  4. Я также следовал советам на этой странице (повторно выберите файл testrunconfig, выбрав Test => Выбрать конфигурацию активного тестового запуска), но безрезультатно.

Тем не менее, я все равно получаю сообщение «Покрытие кода не включено для этого теста» каждый раз, когда я запускаю соответствующий тест. Как включить покрытие кода раз и навсегда?

Ответы [ 5 ]

3 голосов
/ 12 октября 2009

Раньше я боролся с MSTest, в лоте областей (включая покрытие кода) - честно говоря, это * точно не изо всех сил, чтобы облегчить жизнь - особенно с дополнительными testrunconfig и т. д., дублирующие множество вещей, уже находящихся в csproj.

Во всяком случае; чем я обнаружил, что TestDriven.NET имеет это встроенное (если у вас есть правильный выпуск Visual Studio для включения MSTest и покрытия):

alt text
(источник: mutantdesign.co.uk )

При этом будет использоваться ваш существующий тестовый фреймворк (включая MSTest), но он будет перескакивать через все обычные циклы, чтобы включить тестовое покрытие, без необходимости вмешиваться в конфигурацию. Он даже работает с раскраской исходного кода (красный / синий, не проверен / протестирован и т. Д.). Handy.

* = сам инструмент и интеграция с графическим интерфейсом

2 голосов
/ 07 октября 2009

Взгляните на эту страницу и посмотрите, поможет ли это: Советы по использованию покрытия кода в Visual Studio 2005

У него была проблема даже после настройки файла конфигурации, о котором вы упоминали, и проблема была связана со сборками, расположенными в GAC.

0 голосов
/ 12 сентября 2011

В моем случае, когда я решил эту проблему, в меню Test->Select Active Test Run Configuration у меня не было «конфигурации тестового прогона».
Я удалил / добавил .testrunconfig файл и вернулось покрытие кода.
(VS2005 Team Edition)

0 голосов
/ 12 октября 2009

Обязательно запускайте свои тесты из окна «Просмотр теста» или «Список тестов» ... а не из окна результатов теста. Повторный запуск тестов из окна результатов теста не всегда учитывает ваши настройки конфигурации тестового прогона.

0 голосов
/ 07 октября 2009

Если это для проекта c ++, убедитесь, что у вас включено профилирование. Откройте свойства вашего проекта -> Связывание -> Дополнительно. Найдите профиль и настройте его для включения информации о профилировании (/PROFILE).

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