[TIP] Coverage 4.4.1, and help with Cobertura format?

Ned Batchelder ned at nedbatchelder.com
Mon May 15 04:20:01 PDT 2017


Hey all,

I've released coverage.py 4.4, and in keeping with recent history,
quickly got reports of having broken things.

In particular, it's clear that the Cobertura XML report format is only
informally specified, is interpreted in ad-hoc ways, and probably only
makes complete sense for Java projects.  In Coverage.py 4.3, the
<sources> element and the filename= attribute weren't combinable to
produce a real file name:
https://bitbucket.org/ned/coveragepy/issues/526/generated-xml-invalid-paths-for-cobertura
.  I fixed that in 4.4, and that broke a number of third-party tools
that assumed that the filename= attribute was usable as a relative file
path:
https://bitbucket.org/ned/coveragepy/issues/578/incomplete-file-path-in-xml-report

Investigating, it turns out that running coverage.py with multiple
source= options has probably always omitted some files that had the same
name as another file in another source option.  This is because the
<package> element maybe doesn't make sense at all for Python? Not really
sure.

If anyone has the time to think about how to do this right, or has
inside information about what the Cobertura format is really supposed to
mean, please feel free to chime in on the issues, or get in touch with me.

Thanks,

--Ned.






More information about the testing-in-python mailing list