PartCover с TeamCity

Я пытаюсь настроить partcover для .net 4 на машине x64 с TeamCity.

Тесты выполняются, но отчет о покрытии показывает 0 покрытий.

В журнале появляется следующее сообщение:

 No executable code was detected. 
The issue could be caused by one of the following:
- Include / exclude patterns are incorrect
- Assemblies are compiled without debugging information
- .pdb files are not available
- Visual Studio code coverage is enabled for MSTest
- .testrunconfig is used for MSTest and Visual Studio code coverage is not disabled (CodeCoverage section with enable="true" is present)

Но шаблон включения - [*]*.

Если нужно, я использую TeamCity 6.5.3. Кому-нибудь удалось запустить частичную обложку на этой версии?


person Sly    schedule 10.08.2011    source источник
comment
Я не думаю, что JetBrains обновили TeamCity для использования последней версии PartCover (2.2 и 2.3 - это старые версии, которые были только .NET2), вместо того, чтобы использовать встроенную интеграцию, попробуйте выполнить PartCover напрямую, т.е. если вы используете nant, используйте задачу exec .   -  person Shaun Wilde    schedule 10.08.2011
comment
Я знаю, что это не совсем ответ на ваш вопрос, но вы можете обнаружить, что можете получить достаточно точные отчеты о покрытии, если используете Jetbrains DotCover вместо попытки интеграции с PartCover. Мы используем его в нашем проекте, и настройка прошла безболезненно. Teamcity Dotcover   -  person Nick Ryan    schedule 10.08.2011


Ответы (2)


1) PartCover поддерживает только 32-битные процессы, поэтому вам нужно убедиться, что ваш тестовый исполнитель также работает 32-битным.

2) Убедитесь, что вы зарегистрировали DLL PartCover с помощью regsvr32 (вы не можете использовать регистрацию для каждого пользователя, если используете учетную запись службы для запуска team city).

person Shaun Wilde    schedule 14.08.2011
comment
Запуск средства запуска модульных тестов в режиме x86 решил эту проблему, спасибо! - person jonnii; 21.09.2011

Обычно это сообщение означает, что TeamCity не удалось найти ни одной закрытой линии. Это могло быть вызвано сборками или параметрами покрытия.

Не стесняйтесь создавать проблему на http://youtrack.jetbrains.net с частичным отчетом, полученным от местного тестовый забег. Пожалуйста, укажите также номер версии частичной обложки.

TeamCity 6.5.3 должен поддерживать частичную обложку 4.0.11129.

person Eugene Petrenko    schedule 10.08.2011
comment
Почему вы говорите, что они должны поддерживать 4.0.11129 - у вас есть ссылка на это? AFAIK они поддерживают только 2.2 и 2.3, которые были на Soureforge, и они не сделали ничего особенного для версии .NET 4. Так что, если они его поддерживают, это скорее удача (из-за поддерживаемых идентификаторов GUID), чем какое-либо фактическое планирование. - person Shaun Wilde; 15.08.2011
comment
TeamCity запускает partcover.exe только с заданной командной строкой. Он анализирует сгенерированный файл report.xml для создания отчетов и публикации статистики. Какие GUID вы имеете в виду? Проверил, умеет ли он разбирать отчеты от 4.0.11129. - person Eugene Petrenko; 17.08.2011
comment
Это хорошие новости - в раскрывающемся списке TeamCity указано 2.2 и 2.3, но это только версии .NET2. Последняя версия 4.0 - также обрабатывает платформу .NET4. Рассматривали ли вы (JetBrains) поддержку OpenCover - имеет поддержку 32/64 бит, а также имеет покрытие ветвей, а также покрытие точки последовательности. - person Shaun Wilde; 18.08.2011