Skip to content

b3b00/coverlet-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Coverlet action

This action runs coverlet coverage tool on a dotnet core solution

⚠️ This action assumes that your unit test projects are correctly using coverlet packages.

Inputs

testProject

Required Path to the tests :

  • the path to the unit test project (relative to the repository root) e.g. testProject/testProject.csproj.
  • A solution file in which case all test projects included in the solution will be run. ⚠️ When using a solution coverage threshold will not be checked.

output

Required name of the coverage output file.

outputFormat

Required format of the output coverage file (lcov,cobertura, ...) see coverlet documentation : Coverage Output

excludes

assemblies and namespaces exclusions for coverage : see coverlet documentation Filters Filters must be separated with a ',' (comma). example : [filteredAssembly1]*,[filteredAssembl2]namespace2.*

threshold

Minimum coverage percent on all changes to your project below which build will fail. example : 80

debug

if true , produces extra debug output. Optional, false is default

Outputs

coverageFile

path to the generated coverage file. can be used to send data to coveralls for example.

Example usage

uses: b3b00/[email protected]
with:
  testProject: 'myProjectTests/myProjectTests.csproj'
  output: 'lcov.info'
  outputFormat: 'lcov'
  excludes: '[program]*,[test]test.*'
  threshold: 80

chaining coverlet with coveralls

- name : coverlet
uses: b3b00/[email protected]
with:
  testProject: 'myProjectTests/myProjectTests.csproj'
  output: 'lcov.info'
  outputFormat: 'lcov'
  excludes: '[program]*,[test]test.*'
- name: coveralls      
uses: coverallsapp/[email protected]
with:
  github-token: ${{secrets.GITHUB_TOKEN }} 
  path-to-lcov: ${{steps.coverlet.outputs.coverageFile}}