2015-09-07 2 views
1

Я интегрирую SonarQube в нашу систему сборки - я установил sonar-runner-2.4 на наши агенты сборки и добавил sonar-runner.properties для каждого решения (в папку решения на TFS). При запуске сборки я выполняю роль сонара после того, как решение было скомпилировано на агенте сборки. Все похоже на работу для модульного тестирования, за исключением:Сервер SonarQube показывает тесты с нулевым модулем

О журнале Билд, я вижу, что почти 200 тестов прибежал и были успешно завершены и в журнале сонар-бегуна я вижу следующее:

14:23:29.808 INFO - 583/583 source files analyzed 
14:23:30.809 INFO - Sensor [email protected] done: 14937 ms 
14:23:30.809 INFO - Sensor org.sonar.plugins.csharp.core.[email protected]97edbc... 
14:23:30.821 INFO - Sensor org.sonar.plugins.csharp.core.[email protected]97edbc done: 12 ms 

Какие кажется, я думаю, но, войдя в сервер сонара, он показывает, что 0 тестов прошло.

На sonar-runner.properties файл я установил следующее значение

sonar.cs.vstest.reportsPaths: 
sonar.cs.vstest.reportsPaths=TestResults/*.trx 

, когда в этом случае есть 3 vstest TRX файлы, расположенные в следующем локальном пути на агенте построения: `

D:\sTFS\22965\Sources\TestResults

`(см. Приложение TestResults.jpg). Прилагается файл sonar-runner.properties. Я также приложил захват экрана с сервера sonarqube (см. Приложение SonarServer.jpg).

Не могли бы вы сообщить, что может быть проблемой? TestResults

SonarServer

sonar-runner.properties

ответ

0

Вы должны видеть некоторые сообщения, как:

INFO - Parsing the Visual Studio Test Results file ...

для каждого результата файла модульного тестирования, который разбираемый см VisualStudioTestResultsFileParser.java#L34

Можете ли вы попытаться пройти абсолютный шаблон пути до sonar.cs.vstest.reportsPaths? Я предполагаю, что проблема исходит из относительного пути.

Кстати, использование сонара-бегуна для анализа .NET-проектов устарело. Вы захотите взглянуть на Runner SonarQube MSBuild, который предлагает очень хорошую интеграцию с Team Foundation Server. Смотрите новый C# плагин документации на Wiki SonarSource по: http://docs.sonarqube.org/display/PLUG/C%23+Plugin

EDIT

Я просто заметил, что имя пакета из журналов org.sonar.plugins.csharp.core.CSharpUnitTestResultsProvider. .core. присутствовал только в устаревших версиях плагина C# (в серии 3.x), и эти версии могут не поддерживать подстановочные знаки в путях отчетов. Обновите версию до последней версии.

+0

Я не вижу сообщение, подобное тому, что вы написали. я попытался дать абсолютный путь и до сих пор не изменился. Я заметил, что я получил следующее предупреждение: «autonetection поставщика WARN - SCM не удалась. Поставщик SCM не утверждает, что поддерживает этот проект. Пожалуйста, используйте sonar.scm.provider для определения SCM вашего проекта». это имеет какое-либо отношение к модульным тестам? –

+0

Нет, что совсем не связано с результатами тестов Unit Tests.Не могли бы вы попробовать простой сценарий, следуя инструкциям, описанным в http://docs.sonarqube.org/display/PLUG/C%23+Unit+Test+Execution+Results+Import? –

+0

Кажется, что вы используете C# плагин 3.x, который устарел - я отредактировал свой ответ –

Смежные вопросы