Unit test coverage

Jaroslaw Staniek staniek at kde.org
Mon Dec 13 18:55:32 GMT 2010


On 13 December 2010 19:19,  <suresh.chande at nokia.com> wrote:
> From my perspective it will be really very important to increase the unit test coverage of the software particularly for the applications currently:  Words, Stage and Tables as these applications are important in our investigation of making Mobile Office Viewer(FreOffice) usable for real end users. As a practice in general it would be good if we agree some fundamental unit test policy in each application.
>
> Do we have a general understanding on what is the target which is good from your perspective. I think it would be good if the code coverage is atleast close to 80% ?
>

It is most often a big plus even if in our case it's a long term task.

I am not an expert but to optimize this effort I propose to prioritize
the work. For example, let app maintainers (or generally those that
know given code best) to identify how important unit tests are for
given class or file.

See the guideline #24 here: http://geosoft.no/development/unittesting.html

If someone would like to come with a technical facility for priorities
it would be ideal e.g. using magic line in a comment near class
declaration. But it can even work using a simple wiki page.
See "Running Unit Tests by Priority" at
http://geekswithblogs.net/jakob/archive/2009/06/03/tfs-team-build-2010-running-unit-tests.aspx

A class that 1) implements nontrivial algorithm, 2) is a part of core
library or plugin would have higher priority for test coverage.
The idea could be also to assign higher priority with factor 1.0 and
factor 0.5 or so for lower priority. I would even cheat setting 0.0
for generated code consisted of only setters and getters.

Then perhaps the coverage reports would show more realistic results.

PS: At least I am thinking about assigning various priorities unit
tests for clases of the Predicate lib and Kexi...

-- 
regards / pozdrawiam, Jaroslaw Staniek
 http://www.linkedin.com/in/jstaniek
 Kexi & Calligra (kexi-project.org, identi.ca/kexi, calligra-suite.org)
 KDE Software Development Platform on MS Windows (windows.kde.org)



More information about the calligra-devel mailing list