Bug 38840 - Adding coverage analysis to unit tests

John Smith lbalbalba at gmail.com
Fri Aug 24 03:11:22 PDT 2012


On Thu, Aug 23, 2012 at 8:41 PM, Michael Stahl <mstahl at redhat.com> wrote:
> 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.
>
Im not sure that can be done. It seems that everything that gets
touched by 'make build' gets instrumented and therefore included in
the report. lcov does have a '--base-directory' and a '--directory'
flag, but those already point to the LibreOffice sources in
'/usr/local/src/libreoffice'.



>
> 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.
>
I did have one test fail. See the 'make check failure' thread:
http://nabble.documentfoundation.org/make-check-failure-td4002979.html
Could that explain the omission ?



>
> 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.
>
Im not excluding java or junit. My full configure line is :

LDFLAGS+='-fprofile-arcs' CFLAGS+='-fprofile-arcs -ftest-coverage' \
CXXFLAGS+='-fprofile-arcs -ftest-coverage' CPPFLAGS+='-fprofile-arcs
-ftest-coverage' \
./configure --disable-odk --with-system-libcmis=no --with-system-hsqldb=no \
--with-system-saxon=no --with-system-libs


>
> these are run during "make subsequentcheck", you should have files like
> workdir/*/JunitTest/unordf_complex/done.log.
>
Yes, I have a few of those.




Regards,


John Smith.


More information about the LibreOffice mailing list