Покрытие кода для проекта .NET Standard

Как получить результаты покрытия кода для проектов .NET Standard, созданных с помощью Visual Studio 2017?

  • Я пробовал использовать функцию, которая поставляется с Visual Studio (тест меню, анализ покрытия кода, все тесты). Это дает мне следующий отчет:

    введите описание изображения здесь

    Я не ожидал этого, потому что:

    • Ни один из моих реальных проектов не указан, вместо этого я вижу только тестовые проекты.

    • Ни один из моих кодов в этих тестовых проектах не указан, вместо этого я вижу что-то под названием AutoGeneratedProgram.

  • Я пробовал использовать dotCover. Он просто говорит, что не поддерживает мои проекты.

  • Я пробовал использовать OpenCover. Он говорит, что ничего не покрыто:

    введите описание изображения здесь

Теперь мне нечего попробовать. Любая помощь будет оценена по достоинству!


person Mårten Wikström    schedule 08.03.2017    source источник
comment
Что не так с результатом покрытия VS 2017? Вы пробовали раскраску покрытия кода? Вы должны объяснить, что вы ожидаете получить от VS 2017.   -  person Filburt    schedule 08.03.2017
comment
Ой. Прости. Я обновил вопрос.   -  person Mårten Wikström    schedule 08.03.2017
comment
Итак, вы ожидали увидеть противоположное направление. Именно здесь в игру вступает упомянутая раскраска покрытия кода. В противном случае концепция состоит в том, чтобы сообщить, сколько кода покрыто написанными вами тестами - что, конечно, раздражает с точки зрения TDD, потому что вы всегда ожидаете 100% покрытия, но какой-то код не выполняет тест вы написали.   -  person Filburt    schedule 08.03.2017
comment
Можете ли вы показать небольшой образец теста, чтобы прояснить, какие ссылки на проекты вы ожидаете увидеть в своем отчете о покрытии? У меня нет ATM VS 2017, но я не думаю, что он будет сильно отличаться от VS 2015 здесь.   -  person Filburt    schedule 08.03.2017
comment
Этот вопрос относится только к VS 2017. С VS 2015 проблем нет. Хотя новые типы проектов .NET Standard там даже не поддерживаются.   -  person Mårten Wikström    schedule 08.03.2017
comment
Я тоже сегодня столкнулся с этим. Работа над ним все еще продолжается, и выйдет в VS 2017, обновление 3. Вы можете отслеживать это здесь: github .com / Microsoft / vstest / issues / 579.   -  person Sam    schedule 20.05.2017


Ответы (1)


Проблема решена добавлением этого в мой csproj:

<DebugType>Full</DebugType>
person Mårten Wikström    schedule 20.10.2017
comment
Если DebugType Full заставляет вас нервничать, установка DebugType на dpbonly также сработала для меня. - person LukeChastain; 18.11.2017
comment
Из-за этого проект не загружается в VS2017 - person Benjamin Chambers; 04.10.2018