adamhaney / coveralls-python

Show coverage stats online via coveralls.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Coveralls for python

https://travis-ci.org/coagulant/coveralls-python.png?branch=master https://coveralls.io/repos/coagulant/coveralls-python/badge.png?branch=master

Coveralls.io is service to publish your coverage stats online with a lot of nice features. This package provides seamless integration with coverage.py in your python projects. For ruby projects, there is an official gem. Only projects hosted on Github are supported.

Works with python 2.6-2.7 and 3.3

Usage (Travis CI)

This library will publish your coverage results on coveralls.io for everyone to see (unless you're using pro account). This package can possibly work with different CI environments, but it's only tested to work with Travis CI atm.

  1. First, log in via Github and add your repo on Coveralls website.

  2. Add pip install coveralls to install section of .travis.yml

  3. Make sure you run your tests with coverage during the build in script part. Example:

    script:
        coverage run --source=coveralls setup.py -q nosetests
    

    It depends on how you run your tests. Here is another example:

    # --source specifies what packages to cover, you will WANT to use that option
    script:
        coverage run --source=moscowdjango,meetup manage.py test
    

    Note, that example command will gather coverage for specified package. If you wish to customise what's included in your reports, consult coverage docs.

  1. Execute run coveralls in after_success section:

    after_success:
        coveralls
    

Full example of .travis.yml:

language: python
python:
  - 2.7
  - 3.3
install:
  - pip install -r requirements.txt --use-mirrors
  - pip install coveralls --use-mirrors
script:
  - coverage run --source=moscowdjango,meetup manage.py test
after_success:
  - coveralls

Usage (another CI)

If you're NOT using Travis, you have to provide at least a repo_token option in .coveralls.yml at the root of your repo. This is your own secret token, which is available at the bottom of your repository's page on Coveralls. Make sure it stays secret, do not put it in your public repo.

Example of .coveralls.yml:

# .coveralls.yml
repo_token: TjkDuVpGjuQcRhNW8dots9c8SSnv7ReM5

How it works

It makes custom report for data generated by coverage.py package and sends it to json API of coveralls.io service. All python files in your coverage analysis are posted to this service along with coverage stats, so please make sure you're not ruining your own security! For private projects there is Coveralls Pro.

Tests

$ python setup.py test

About

Show coverage stats online via coveralls.io

License:MIT License


Languages

Language:Python 100.0%