We are experiencing an issue on our SonarQube integration for Azure DevOps. Every run reports different coverage (around 50% of our projects are missing code coverage data). However every run excludes different projects every time.
We are using MSBuild integration, and the DotNetCli test task.
The task is set to
publishTestResults=true. The .coverage data in Azure DevOps reports correctly, i.e. we believe there is an issue in the conversion from .coverage to .coveragexml as explained in this thread.
We have 21 unit tests projects. If we run the tests in parallel it only tries to read in ~14 coveragexml files. As you can see in the output these coveragexml files are named with suffixes due to name clashes of them completing simultaneously.
parallel_run.txt (5.2 KB)
However, if we run the test in sequence all the coverage is loaded and corresponds to the .coverage data.
sequential_run.txt (7.2 KB)
Is this a known issue? Are there any other ways to circumvent it than to run the tests in sequence?
SonarQube task version info:
Task : Run Code Analysis Description : Run scanner and upload the results to the SonarQube server. Version : 4.9.0