Bug 38840 - Adding coverage analysis to unit tests

Michael Stahl mstahl at redhat.com
Thu Aug 23 11:41:43 PDT 2012


On 23/08/12 18:09, John Smith wrote:
> Hi,
> 
> 
> I just finished a first full run of lcov. There was one 'make check'
> failure though, and there were a lot of 'warnings' running lcov that
> may need some further investigation. Also, there is some stuff
> included ('/usr/include/boost', for example) that might not be desired
> in the report ?

yes, everything under /usr/include is just noise, would be great to
filter that out.

hmm... it's a bit ugly that we have so many directories in solver that
headers are copied to, but i guess we have to live with that for now :)

> I guess the main thing to do first now is to see if this report
> actually makes any sense. Essentially, all code that gets executed by
> 'make check' on toplevel (which does dev-install and subsequentcheck,
> and dev-install includes both unitcheck and slowcheck) should show up
> as covered in the report. Maybe people that are familiar with the
> contents of the checks/tests and what code/functionality they cover
> can take a look at that ?

so looking at a few bits where i'm familiar with the tests tests like:

http://dev-builds.libreoffice.org/lcov_reports/master~2012-08-22_09.11.23/sax/source/tools/converter.cxx.gcov.html

it seems quite plausible.

but looking at

http://dev-builds.libreoffice.org/lcov_reports/master~2012-08-22_09.11.23/unoxml/source/dom/node.cxx.gcov.html
http://dev-builds.libreoffice.org/lcov_reports/master~2012-08-22_09.11.23/unoxml/source/rdf/librdf_repository.cxx.gcov.html

some functions that are definitely tested like
librdf_Repository::querySelect or CNode::insertBeforeshow up entirely
un-executed.

are you running the JUnit based tests as well?  i.e. if you use
--without-java or --without-junit, that would negatively affect the test
coverage.

these are run during "make subsequentcheck", you should have files like
workdir/*/JunitTest/unordf_complex/done.log.

> Anyway, the generated html report as it currently is can be found here :
> http://dev-builds.libreoffice.org/lcov_reports/

very good work!



More information about the LibreOffice mailing list