По крайней мере, мне удалось провести анализ с помощью сонара. Я считаю, что новый рабочий процесс начального построения с MSBuild SonarQube Runner немного усложняется при использовании Jenkins и, по крайней мере, имеет множество существующих скриптов. Или я не мог заставить его работать из-за слегка ориентированной на TFS документации с приглашением командной строки Visual Studio.
Я, наконец, после интенсивного поиска в Google, провел анализ с моей Visual Studio Pro + Jenkins + OpenCover + Mstest + Nunit, указав ниже свойства в Invoke Standalone SonarCube Analysis в задании Дженкинса. Я до сих пор не знаю, как отделить интеграционные тесты от модульных тестов. Он нигде не говорит, что это поддерживается даже для проектов C#.
Рабочий процесс заключается в том, что я сначала построил все, а затем запустил OpenCover для сбора результатов с покрытием и последующего вызова бегуна. Следующие свойства могут, конечно, быть в файле в корневой папке проекта, но в моем первоначальном доказательстве концепции я установил их в плагин Jenkins.
sonar.projectName=projectname
sonar.projectKey=key
sonar.ProjectVersion=1.1
sonar.visualstudio.enable=true
sonar.language=cs
sonar.sources=.
sonar.dotnet.visualstudio.solution.file=code.sln
#not sure if the line below is correct or relevant...
sonar.dotnet.visualstudio.testProjectPattern=*Test
#two frameworks producing tests.
sonar.cs.vstest.reportsPaths=relativepath/results.trx
sonar.cs.nunit.reportsPaths=relativepath/testresults.xml
sonar.cs.opencover.reportsPaths=1.xml,2.xml
Я думаю, настоящий вопрос: почему вы не можете использовать MSBuild SonarQube Runner? –