使用sonarqube 5.0.1与Sonar-Runner和Dotcover。 我有一个项目,有子串"测试"在它的路径上,但它不是一个测试项目。
我可以在运行输出中看到以下条目: "添加Visual Studio测试项目:****。*****。测试。********。" (减少了一些名称) - 所以看起来它将这个项目标记为测试项目。 此外,项目的路径包含该子字符串: F:\工作区\ *** - 测试 - **** - 1的\ src \测试***** \ **** *** ****测试\ ***。。 * ****。测试。*****的csproj
我对测试项目使用以下模式:
sonar.donet.visualstudio.testProjectPattern = *。测试
不确定为什么会被标记。 - 我也试过使用下面的正则表达式: sonar.donet.visualstudio.testProjectPattern = [^ \\] 测试[^ \\] $
根据以下错误: https://jira.sonarsource.com/browse/SONARMSBRU-121
请告知为什么这会被标记为测试项目,我该如何解决这个问题。
在sonarqube中 - 正在显示覆盖范围,但没有代码行,没有问题。
修改
Jenkins的完整命令: (用*减少一些内部数据):
E:.... \ sonar-runner-2.4 \ bin \ sonar-runner.bat -e -Dsonar.jdbc.url = jdbc:oracle:thin:@ host.com ******** ******** -Dsonar.host.url = http://sonarhost.com:9000 ******** ******** -Dsonar.projectBaseDir = F:... \ workspaces \ jenkinsjob -1 -Dsonar.cs.nunit.reportsPaths = reports \ nunit-result.xml -Dsonar.resharper.solutionFile = Src \ Testing。 \ Testing。 .sln -Dsonar .resharper.projectName = 。 .Testing。**** -Dsonar.sources =。 -Dsonar.dotnet.visualstudio.solution.file = Src \ Testing。**** \ Testing。****。sln -Dsonar.fxcop.mode = skip -Dsonar.exclusions = .Designer.cs -Dsonar .donet.visualstudio.testProjectPattern = .Tests -Dsonar.language = cs -Dsonar.visualstudio.enable = true -Dsonar.cs.dotcover.reportsPaths = reports \ coverage-report.html -Dsonar.resharper.installDirectory = E:.... \ ReSharperCommandLineTools09Update1 -Dsonar.projectVersion = 2.1 -Dsonar.dotnet.fxcop = skip -Dsonar.visualstudio.skipIfNotBuilt = true -Dsonar.projectName = ****。****。测试。*** ** -Dsonar.sourceEncoding = UTF-8 -Dsonar.projectKey = company.com: *。 .Testing。***** -Dsonar.scm.disabled = true -Dsonar.dotnet.key .generation.strategy =安全