Подтвердить что ты не робот

Visual studio имеет покрытие кода для модульных тестов?

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

Если мне нужно использовать стороннее решение, что было бы хорошим вариантом?

4b9b3361

Ответ 1

Только Visual Studio 2015 Enterprise имеет встроенное покрытие кода. Подробнее см. матрицу свойств.

Вы можете использовать расширение OpenCover.UI для проверки покрытия кода внутри Visual Studio. Он поддерживает MSTest, nUnit и xUnit.

Новая версия может быть загружена из здесь (Примечания к выпуску)

Ответ 2

Toni Ответ очень полезен, но я подумал о быстром запуске для всех новичков, чтобы проверить оценку покрытия (например, я).

Как уже упоминалось, Visual Studio Professional и Community Editions не имеют встроенной поддержки тестирования. Однако его можно получить довольно легко. Я напишу пошаговую конфигурацию для использования с тестами NUnit в Visual Studion 2015 Professional.

  • Установите компонент OpenCover NUGet с помощью интерфейса NuGet

  • Получить расширение OpenCoverUI. Это можно установить непосредственно из Visual Studio с помощью Tools → Extensions and Updates

  • Настройте OpenCoverUI для использования соответствующих исполняемых файлов, обратившись к Tools → Options → OpenCover.UI Options → General

Путь NUnit: должен указывать на файл `nunit-console.exe. Это можно найти только в версии NUnit 2.xx, которую можно загрузить с здесь.

Путь OpenCover: это должно указывать на установленный пакет, обычно <solution path>\packages\OpenCover.4.6.519\tools\OpenCover.Console.exe

  1. Установить пакет ReportGenerator NUGet

  2. Откройте OpenCover Test Explorer из меню OpenCover. Попробуйте открыть тесты оттуда. Если это не удается, проверьте выходные окна для более подробной информации.

  3. Проверьте результаты OpenCover (в меню OpenCover) для получения более подробной информации. Он будет выводить данные, такие как Cover Coverage, в виде дерева. Вы также можете выделить код, который является или не покрыт (маленький значок в левом верхнем углу).

ПРИМЕЧАНИЕ., как уже упоминалось, OpenCoverUI не поддерживает последнюю версию NUnit (3.xx). Однако, если в тестах не используется ничего конкретного для этой версии, она будет работать без проблем, независимо от того, установлена ​​ли версия NUnit 3.xx.

Это относится к быстрому запуску. Как уже упоминалось в комментариях, для более расширенной настройки и автоматизации проверьте эту статью.

Ответ 3

Если вы используете Visual Studio 2017 и сталкиваетесь с этим вопросом, вы можете рассмотреть AxoCover. Это бесплатное расширение VS, которое интегрирует OpenCover, но поддерживает VS2017 (оно также находится в активной разработке +1).

Страница расширения VS

https://github.com/axodox/AxoTools