Skip to content

Latest commit

 

History

History
77 lines (60 loc) · 2.36 KB

README.rst

File metadata and controls

77 lines (60 loc) · 2.36 KB

Django Test Coverage App

A test coverage reporting tool that utilizes Ned Batchelder's excellent coverage.py to show how much of your code is exercised with your tests.

  • Django 1.2 and above. For earlier versions, try version 1.0.3 of django-coverage.
  • coverage.py
  1. Place the entire django_coverage app in your third-party apps directory.
  2. Update your settings.INSTALLED_APPS to include django_coverage.
  3. Include test coverage specific settings in your own settings file. See settings.py for more detail.

Once you've completed all the steps, you'll have a new custom command available to you via manage.py test_coverage. It works just like manage.py test.

You don't have to install django_coverage as an app if you don't want to. You can simply use the test runner if you like.

  1. Update settings.TEST_RUNNER = 'django_coverage.coverage_runner.CoverageRunner'
  2. Include test coverage specific settings in your own settings file. See settings.py for more detail.
  3. Run manage.py test like you normally do.

django_coverage will also generate a badge image that represents the percentage coverage that your project has.

This will be stored in the same directory as the coverage report data: $PROJECT/.coverage/coverage_status.png.

Currently, the only badge type that is included is drone.io. When other types are included, you will be able to select which is used by settings.COVERAGE_BADGE_TYPE.

To prevent the badge generation, you could set this to None.

Using the coverage badge with drone.io

drone.io has no native support for coverage reporting. However, you can save build artifacts: just tell it to save one called: .coverage/coverage_status.png. Then you can reference it in your project's README.

And that's it.