From 967a10da1decde0f185c88aaba0d586fbd51ae34 Mon Sep 17 00:00:00 2001 From: fhnaseer Date: Wed, 17 Apr 2024 16:49:16 +0200 Subject: [PATCH] Adding MSTest Sdk sample (#117) * Adding mstest sdk project, --- .github/workflows/Algorithms_Scenario07.yml | 42 ++++++++ samples/Algorithms/README.md | 2 + .../Algorithms/scenarios/scenario07/README.md | 96 ++++++++++++++++++ .../scenarios/scenario07/azure-pipelines.jpg | Bin 0 -> 94434 bytes .../scenarios/scenario07/azure-pipelines.yml | 39 +++++++ .../scenario07/example.report.cobertura.xml | 87 ++++++++++++++++ .../scenarios/scenario07/example.report.jpg | Bin 0 -> 70031 bytes .../Algorithms/scenarios/scenario07/run.ps1 | 2 + .../Algorithms.Core.MSTest.Sdk.Tests.csproj | 13 +++ .../MergerTests.cs | 38 +++++++ .../Algorithms.Core.Tests/MergerTests.cs | 4 +- 11 files changed, 321 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/Algorithms_Scenario07.yml create mode 100644 samples/Algorithms/scenarios/scenario07/README.md create mode 100644 samples/Algorithms/scenarios/scenario07/azure-pipelines.jpg create mode 100644 samples/Algorithms/scenarios/scenario07/azure-pipelines.yml create mode 100644 samples/Algorithms/scenarios/scenario07/example.report.cobertura.xml create mode 100644 samples/Algorithms/scenarios/scenario07/example.report.jpg create mode 100644 samples/Algorithms/scenarios/scenario07/run.ps1 create mode 100644 samples/Algorithms/tests/Algorithms.Core.MSTest.Sdk.Tests/Algorithms.Core.MSTest.Sdk.Tests.csproj create mode 100644 samples/Algorithms/tests/Algorithms.Core.MSTest.Sdk.Tests/MergerTests.cs diff --git a/.github/workflows/Algorithms_Scenario07.yml b/.github/workflows/Algorithms_Scenario07.yml new file mode 100644 index 0000000..61807e9 --- /dev/null +++ b/.github/workflows/Algorithms_Scenario07.yml @@ -0,0 +1,42 @@ +# This workflow will build a .NET project +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net + +name: "Algorithms Scenario 07" + +on: + push: + branches: [ "main" ] + paths: [ 'samples/Algorithms/tests/**', 'samples/Algorithms/src/**', '.github/workflows/Algorithms_Scenario07.yml' ] + +jobs: + build: + + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./samples/Algorithms/tests/Algorithms.Core.MSTest.Sdk.Tests + steps: + - uses: actions/checkout@v3 + - name: Setup .NET + uses: actions/setup-dotnet@v3 + with: + dotnet-version: 8.0.x + - name: Restore dependencies + run: dotnet restore + - name: Build + run: dotnet build --no-restore + - name: Test + run: dotnet run --no-build --coverage --coverage-output $GITHUB_WORKSPACE/report.cobertura.xml --coverage-output-format cobertura + - name: ReportGenerator + uses: danielpalme/ReportGenerator-GitHub-Action@5.2.0 + with: + reports: '${{ github.workspace }}/report.cobertura.xml' + targetdir: '${{ github.workspace }}/coveragereport' + reporttypes: 'MarkdownSummaryGithub' + - name: Upload coverage into summary + run: cat $GITHUB_WORKSPACE/coveragereport/SummaryGithub.md >> $GITHUB_STEP_SUMMARY + - name: Archive code coverage results + uses: actions/upload-artifact@v3 + with: + name: code-coverage-report + path: ${{ github.workspace }}/report.cobertura.xml diff --git a/samples/Algorithms/README.md b/samples/Algorithms/README.md index 2290a47..45bc178 100644 --- a/samples/Algorithms/README.md +++ b/samples/Algorithms/README.md @@ -4,6 +4,7 @@ Solution contains two projects: 1. `Algorithms.Core` - contains core logic for solution 2. `Algorithms.Console` - contains Native AOT console app 3. `Algorithms.Core.Tests` - contains unit tests for `Algorithms.Core`. It is [MSTest runner project](https://learn.microsoft.com/en-us/dotnet/core/testing/unit-testing-mstest-runner-intro?tabs=dotnetcli) +4. `Algorithms.Core.MSTest.Sdk.Tests` - contains unit tests for `Algorithms.Core`. It is [MSTest runner project using MSTest SDK](https://learn.microsoft.com/en-us/dotnet/core/testing/unit-testing-mstest-sdk) # Scenarios @@ -13,3 +14,4 @@ Solution contains two projects: 4. [***Scenario 04*** Code coverage for MSTest Runner project using `dotnet-coverage` tool](scenarios/scenario04/README.md) 5. [***Scenario 05*** Code coverage for Native AOT console app](scenarios/scenario05/README.md) 6. [***Scenario 06*** Code coverage for Native AOT MSTest Runner project](scenarios/scenario06/README.md) +7. [***Scenario 07*** Code coverage for MSTest SDK project using dynamic instrumentation](scenarios/scenario07/README.md) diff --git a/samples/Algorithms/scenarios/scenario07/README.md b/samples/Algorithms/scenarios/scenario07/README.md new file mode 100644 index 0000000..7836675 --- /dev/null +++ b/samples/Algorithms/scenarios/scenario07/README.md @@ -0,0 +1,96 @@ +# Scenario Description + +Collect code coverage using dynamic instrumentation for MSTest SDK project. + +> **_NOTE:_** MSTest SDK project coverage extension by default is not collecting native code coverage. If you want to enable please set to `True` `EnableStaticNativeInstrumentation` or `EnableDynamicNativeInstrumentation` in configuration. + +## Collect code coverage using command line + +```shell +git clone https://github.com/microsoft/codecoverage.git +cd codecoverage/samples/Algorithms/tests/Algorithms.Core.MSTest.Sdk.Tests/ +dotnet run --coverage --coverage-output report.cobertura.xml --coverage-output-format cobertura +``` + +You can also use [run.ps1](run.ps1) to collect code coverage. + +## Collect code coverage inside github workflow + +`reportgenerator` can be used to generate final github summary markdown. + +```yml + steps: + - uses: actions/checkout@v3 + - name: Setup .NET + uses: actions/setup-dotnet@v3 + with: + dotnet-version: 8.0.x + - name: Restore dependencies + run: dotnet restore + - name: Build + run: dotnet build --no-restore + - name: Test + run: dotnet run --no-build --coverage --coverage-output $GITHUB_WORKSPACE/report.cobertura.xml --coverage-output-format cobertura + - name: ReportGenerator + uses: danielpalme/ReportGenerator-GitHub-Action@5.2.0 + with: + reports: '${{ github.workspace }}/report.cobertura.xml' + targetdir: '${{ github.workspace }}/coveragereport' + reporttypes: 'MarkdownSummaryGithub' + - name: Upload coverage into summary + run: cat $GITHUB_WORKSPACE/coveragereport/SummaryGithub.md >> $GITHUB_STEP_SUMMARY + - name: Archive code coverage results + uses: actions/upload-artifact@v3 + with: + name: code-coverage-report + path: ${{ github.workspace }}/report.cobertura.xml +``` + +[Full source example](../../../../.github/workflows/Algorithms_Scenario07.yml) + +[Run example](../../../../../../actions/workflows/Algorithms_Scenario07.yml) + +## Collect code coverage inside Azure DevOps Pipelines + +```yml +steps: +- task: DotNetCoreCLI@2 + inputs: + command: 'restore' + projects: '$(projectPath)' # this is specific to example - in most cases not needed + displayName: 'restore' + +- task: DotNetCoreCLI@2 + inputs: + command: 'build' + arguments: '--no-restore --configuration $(buildConfiguration)' + projects: '$(projectPath)' # this is specific to example - in most cases not needed + displayName: 'build' + +- task: DotNetCoreCLI@2 + inputs: + command: 'run' + arguments: '--no-build --configuration $(buildConfiguration) --results-directory $(Agent.TempDirectory) --coverage --coverage-output $(Agent.TempDirectory)/report.cobertura.xml --coverage-output-format cobertura --report-trx' + projects: '$(projectPath)' # this is specific to example - in most cases not needed + displayName: 'test' + +- task: PublishTestResults@2 + inputs: + testResultsFormat: 'VSTest' + testResultsFiles: '$(Agent.TempDirectory)/**/*.trx' + publishRunAttachments: false + +- task: PublishCodeCoverageResults@2 + inputs: + summaryFileLocation: $(Agent.TempDirectory)/**/*.cobertura.xml +``` + +[Full source example](azure-pipelines.yml) + +![alt text](azure-pipelines.jpg "Code Coverage tab in Azure DevOps pipelines") + +## Report example + +![alt text](example.report.jpg "Example report") + +[Link](example.report.cobertura.xml) diff --git a/samples/Algorithms/scenarios/scenario07/azure-pipelines.jpg b/samples/Algorithms/scenarios/scenario07/azure-pipelines.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e73469840da187ac043550f6b43968cc0c244b9a GIT binary patch literal 94434 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%0D%10RRng1Qw}0vRlTR2mYyR00 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 sPTzmA5$3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/samples/Algorithms/scenarios/scenario07/example.report.jpg b/samples/Algorithms/scenarios/scenario07/example.report.jpg new file mode 100644 index 0000000000000000000000000000000000000000..39c33d530cf45d116991793c55c54e77c7d5a9ce GIT binary patch literal 70031 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

t8bDceikMq*?oop8k?i9vF`0 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%0AxLn|U0hi8Cp8Sk{I7Aw}!Gq9$=&6HnGY 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 + + + net8.0 + enable + enable + + + + + + + diff --git a/samples/Algorithms/tests/Algorithms.Core.MSTest.Sdk.Tests/MergerTests.cs b/samples/Algorithms/tests/Algorithms.Core.MSTest.Sdk.Tests/MergerTests.cs new file mode 100644 index 0000000..6d5e1af --- /dev/null +++ b/samples/Algorithms/tests/Algorithms.Core.MSTest.Sdk.Tests/MergerTests.cs @@ -0,0 +1,38 @@ +using Algorithms.Core; +using Microsoft.VisualStudio.TestTools.UnitTesting; + +[assembly: Parallelize(Workers = 0, Scope = ExecutionScope.MethodLevel)] + +namespace Algorithms.Core.MSTest.Sdk.Tests; + +[TestClass] +public class MergerTests +{ + [TestMethod] + public void Test1() + { + var result = Merger.Merge([1, 3, 5], [2, 4, 5, 6]); + AssertArrays([1, 2, 3, 4, 5, 5, 6], result); + } + + [TestMethod] + public void Test2() + { + var result = Merger.Merge([], [2, 4, 5, 6]); + AssertArrays([2, 4, 5, 6], result); + } + + [TestMethod] + public void Test3() + { + var result = Merger.Merge([2, 4, 5, 6], []); + AssertArrays([2, 4, 5, 6], result); + } + + private void AssertArrays(int[] expected, int[] actual) + { + Assert.AreEqual(expected.Length, actual.Length, $"Sizes of arrays are different. expected.Length={expected.Length} actual.Length={actual.Length}"); + for (int index = 0; index < expected.Length; index++) + Assert.AreEqual(expected[index], actual[index], $"Arrays different on index={index}. expected[{index}]={expected[index]} actual[{index}]={actual[index]}"); + } +} diff --git a/samples/Algorithms/tests/Algorithms.Core.Tests/MergerTests.cs b/samples/Algorithms/tests/Algorithms.Core.Tests/MergerTests.cs index 7db83e0..220e250 100644 --- a/samples/Algorithms/tests/Algorithms.Core.Tests/MergerTests.cs +++ b/samples/Algorithms/tests/Algorithms.Core.Tests/MergerTests.cs @@ -1,4 +1,4 @@ -using Algorithms.Core; +using Algorithms.Core; using Microsoft.VisualStudio.TestTools.UnitTesting; [assembly: Parallelize(Workers = 0, Scope = ExecutionScope.MethodLevel)] @@ -35,4 +35,4 @@ private void AssertArrays(int[] expected, int[] actual) for (int index = 0; index < expected.Length; index++) Assert.AreEqual(expected[index], actual[index], $"Arrays different on index={index}. expected[{index}]={expected[index]} actual[{index}]={actual[index]}"); } -} \ No newline at end of file +}