Skip to content

Commit

Permalink
MAINT: Use dotnet-coverage instead of Coverlet for coverage collection (
Browse files Browse the repository at this point in the history
  • Loading branch information
asilverman committed May 25, 2023
1 parent 0fa500c commit eb63729
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 16 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -532,7 +532,7 @@ jobs:
uses: actions/setup-dotnet@v3

- name: Run Tests
run: dotnet test --filter '${{ matrix.config.filter}}' --configuration release --logger trx --blame --collect:"XPlat Code Coverage" --settings ./.github/workflows/codecov.runsettings --results-directory ./TestResults/
run: dotnet test --filter '${{ matrix.config.filter}}' --configuration release --settings ./.github/workflows/codecov.runsettings

- name: Upload Test Results
uses: actions/upload-artifact@v3
Expand Down
37 changes: 22 additions & 15 deletions .github/workflows/codecov.runsettings
Original file line number Diff line number Diff line change
Expand Up @@ -3,28 +3,35 @@
<RunConfiguration>
<!-- Break builds when no tests are discovered. -->
<TreatNoTestsAsError>false</TreatNoTestsAsError>
<ResultsDirectory>../../TestResults</ResultsDirectory>
</RunConfiguration>
<DataCollectionRunSettings>
<DataCollectors>
<!-- Settings are documented at https://github.com/coverlet-coverage/coverlet/blob/master/Documentation/VSTestIntegration.md#advanced-options-supported-via-runsettings -->
<DataCollector friendlyName="XPlat Code Coverage">
<!-- "Code Coverage" settings documented in https://learn.microsoft.com/en-us/visualstudio/test/customizing-code-coverage-analysis?view=vs-2022 -->
<DataCollector friendlyName="Code Coverage">
<Configuration>
<Format>cobertura</Format>
<!--
By default coverlet includes all assemblies that are referenced by test assemblies.
In our case, this includes other test assemblies, which makes the coverage results
inconsistent. If we want to exclude all test assemblies in the future, we should
use the Exclude setting instead.
-->
<IncludeTestAssembly>true</IncludeTestAssembly>
<CodeCoverage>
<ModulePaths>
<Exclude>
<ModulePath>.*moq.dll$</ModulePath>
</Exclude>
</ModulePaths>
</CodeCoverage>
</Configuration>
</DataCollector>
</DataCollectors>
</DataCollectionRunSettings>
<!-- <MSTest>
<Parallelize>
<Workers>4</Workers>
<Scope>ClassLevel</Scope>
</Parallelize>
</MSTest> -->
<LoggerRunSettings>
<Loggers>
<Logger friendlyName="console" enabled="True">
<Configuration>
<Verbosity>quiet</Verbosity>
</Configuration>
</Logger>
<Logger friendlyName="trx" enabled="True" />
<!-- Enables blame -->
<Logger friendlyName="blame" enabled="True" />
</Loggers>
</LoggerRunSettings>
</RunSettings>

0 comments on commit eb63729

Please sign in to comment.