[ 
https://issues.apache.org/jira/browse/BEAM-2762?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16174331#comment-16174331
 ] 

ASF GitHub Bot commented on BEAM-2762:
--------------------------------------

GitHub user markflyhigh opened a pull request:

    https://github.com/apache/beam/pull/3879

    [BEAM-2762] Python code coverage report in Postcommit

    Follow this checklist to help us incorporate your contribution quickly and 
easily:
    
     - [x] Make sure there is a [JIRA 
issue](https://issues.apache.org/jira/projects/BEAM/issues/) filed for the 
change (usually before you start working on it).  Trivial changes like typos do 
not require a JIRA issue.  Your pull request should address just this issue, 
without pulling in other changes.
     - [ ] Each commit in the pull request should have a meaningful subject 
line and body.
     - [ ] Format the pull request title like `[BEAM-XXX] Fixes bug in 
ApproximateQuantiles`, where you replace `BEAM-XXX` with the appropriate JIRA 
issue.
     - [ ] Write a pull request description that is detailed enough to 
understand what the pull request does, how, and why.
     - [ ] Run `mvn clean verify` to make sure basic checks pass. A more 
thorough check will be performed on your pull request automatically.
     - [ ] If this contribution is large, please file an Apache [Individual 
Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
    
    ---
    
    Use coverage.py to run py27gcp test suite in order to generate coverage 
report in Python postcommit build.
     - Add `cover` env in `tox.ini` which run `py27gcp` and generate report.
     - Report will be printed to test log and also in a xml file.
     - Only enable the coverage report in python postcommit since precommit 
build already takes ~30mins with existing test suites. Run `py27gcp` in code 
coverage will add ~7mins to the build. (thoughts?)
    
    Future:
    Send coverage report to coverage service (like `coveralls.io`). The known 
issue for `coveralls.io` is that reports from different languages will mix 
together in `coveralls.io` and record as history data.
    
    +R: @charlesccychen 

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/markflyhigh/incubator-beam coverage-report

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/beam/pull/3879.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #3879
    
----
commit 0c2a82c6d032a6d00c572910b0696c2a73cf70eb
Author: Mark Liu <[email protected]>
Date:   2017-09-21T06:08:09Z

    [BEAM-2762] Python code coverage report in Postcommit

----


> Coverage report for Python code
> -------------------------------
>
>                 Key: BEAM-2762
>                 URL: https://issues.apache.org/jira/browse/BEAM-2762
>             Project: Beam
>          Issue Type: Task
>          Components: sdk-py-core, testing
>            Reporter: Mark Liu
>            Assignee: Mark Liu
>
> It's good to have code coverage in Python SDK to show the test coverage. Java 
> is using jacoco-maven-plugin to generate coverage report and coveralls 
> service to manage/display data. 
> Python have similar tool called coverage.py for report generation and 
> coveralls-python to send report to api of coveralls service. 
> It's nice to have one place (like coveralls service) to manage and show data 
> from different SDKs together/separately. However, there are still some 
> problems due to the fact of Beam CI system and multi languages in Beam. The 
> coveralls service doesn't have a good way to collect data separately from 
> different projects. But the postcommit builds are separated by sdks. 
> As the first step, I think it's good to have the python coverage report 
> printout in the build to give people a idea of the current coverage status at 
> lease.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to