Сервер SonarQube не показывает модульных тестов

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

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

14:23:29.808 INFO  - 583/583 source files analyzed  
14:23:30.809 INFO  - Sensor org.sonar.plugins.csharp.squid.CSharpSquidSensor@1a50b87 done: 14937 ms  
14:23:30.809 INFO  - Sensor org.sonar.plugins.csharp.core.CSharpUnitTestResultsProvider$CSharpUnitTestResultsImportSensor@97edbc...  
14:23:30.821 INFO  - Sensor org.sonar.plugins.csharp.core.CSharpUnitTestResultsProvider$CSharpUnitTestResultsImportSensor@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).

Не подскажете, в чем может быть проблема? Результаты теста

SonarServer

sonar-runner.properties


person Guy Salton    schedule 07.09.2015    source источник


Ответы (1)


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

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

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

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

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

ИЗМЕНИТЬ

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

person Dinesh Bolkensteyn    schedule 08.09.2015
comment
Я не вижу сообщения, подобного тому, которое вы написали. я пытался указать абсолютный путь и до сих пор никаких изменений. Я заметил, что получаю следующее предупреждение: ПРЕДУПРЕЖДЕНИЕ - Ошибка автоопределения поставщика SCM. Ни один поставщик SCM не претендует на поддержку этого проекта. Пожалуйста, используйте sonar.scm.provider для определения SCM вашего проекта. это как-то связано с модульными тестами? - person Guy Salton; 08.09.2015
comment
Нет, это вообще не относится к результатам модульных тестов. Не могли бы вы попробовать простой сценарий, следуя инструкциям, описанным в docs.sonarqube.org/display/PLUG/ ? - person Dinesh Bolkensteyn; 08.09.2015
comment
Кажется, вы используете устаревший плагин С# 3.x - я отредактировал свой ответ. - person Dinesh Bolkensteyn; 08.09.2015
comment
Я обновил плагин С# и использовал MSBuild SonarQube Runner, как вы предложили. теперь есть только одна проблема, я получаю следующую ошибку: ОШИБКА: Причина: папка «пример» не существует для «A56FD28C-5687-44E2-8D11-8CB1CE43472A» (базовый каталог = D:\sTFS\ 27170\Sources\NDM\TestingTools\XmlUtilsTests). - person Guy Salton; 09.09.2015
comment
Я попытался вручную добавить пустую папку с этим именем, и это решило проблему. Есть ли что-то, что я могу добавить в SonarQube.Analysis.xml или в качестве аргумента командной строки, которая будет игнорировать эту отсутствующую папку? Я видел ответ относительно java здесь: ссылка - person Guy Salton; 09.09.2015
comment
Я рад слышать, что первоначальная проблема решена. Не могли бы вы создать новый вопрос с более подробной информацией об этой проблеме с папкой? Спасибо - person Dinesh Bolkensteyn; 10.09.2015