2016-01-14 5 views
0

Я пытаюсь интегрировать Opencover с TFS2013 для пользовательского охвата кода. Я передаю параметры, необходимые для запуска Open Cover через build definiton nad invoking OC, используя операцию InvokeProcess в шаблоне процесса сборки.OpenCover- Open cover, говорящий о недостающих PDB при работе с vstest.console.ex в tfs build definiton

Я слежу за procees, упомянутые в this blog, here и here.

Окончательные аргументы OpenCover пройденные

OpenCover.Console.exe -register:user -target:"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" -targetargs:"<build_definition_folder>\bin\NUnitTestDemo.dll <build_definition_folder>\bin\UnitTest.dll /Platform:X86 /Framework:Framework45 /Logger:trx " -targetdir:"<build_definition_folder>\bin" -mergebyhash -output:"<build_definition_folder>\bin\results.xml" 

Выход приходит в

Всего тестов: 2. Зачет: 2. Ошибка: 0 пропущено: 0

Test Run Преуспевающий ,

Test Время выполнения: 0.6657 секунд

Совершение ...

Нет результатов, это может быть по ряду причин. Наиболее распространенными причинами являются:

1) Отсутствующие PDB для сборок, соответствующих фильтру, просмотрите выходной файл и обратитесь к руководству по использованию (Usage.rtf) об фильтрах. 2) профайлер может быть неправильно зарегистрирован, см. Руководство по эксплуатации и переключатель -регистратор.

Пожалуйста, помогите мне. PDB присутствуют только в одной папке. Я попытался запустить Open cover локально в своей машине с Open Cover UI, и он дает результаты хорошо. но с консольным приложением он не работает, как я ожидал на сервере сборки.

+0

Вы используете powershell? – iikkoo

+0

@iikkoo no Я использую пакетные файлы. есть ли проблема с этим. ? параметры для консоли OC получаются во время выполнения, используя stdouput. и я чувствую, что все параметры переданы правильно. все еще запутывает, почему он не работает. –

+0

Попробуйте разместить цитаты вокруг таргетинга следующим образом: «-targetargs: ». – iikkoo

ответ

1

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

Мое исправление: Остановите службу сборки и измените настройки в «Свойствах», чтобы запустить службу в качестве учетной записи администратора. А затем запустите службу сборки и запустите новую сборку. enter image description here