GroboUtils

About GroboUtils

Sourceforge
Project

For Developers

GroboCodeCoverage version 1.1.0

Requirements

Author:Matt Albrecht

Create one or more Java tools which:
  1. Generate code coverage information for an execution of one or more Java classes. Code Coverage refers to a collection of data based on source files, class files, and step tracing of the execution:
    1. which unique source lines and/or bytecode instructions that were visited within the execution process for each class under consideration.
    2. source lines and/or bytecode instructions that exist within the classes under consideration.
    A class is classified as "under consideration" if the user specifies that the class is to be included in the code coverage statistics results.
  2. The two types of data above must be stored external to the tools. This allows for greater performance, and easier bug checking. It also leads to a more UN*X like tool chain.
  3. Generate statistics based on the the collected code coverage data:
    1. ratio between the number of unique lines that were visited in the execution process to the number of lines in the classes under consideration, grouped by methods.
    2. ratio between the number of bytecode instructions that were visited in the execution process to the number of bytecode instructions in the classes under consideration, grouped by methods.
    3. Additional statistics derived from the above data. This includes per package, per class, and per method breakdown of the statistics. Also included is ratios of covered lines to total lines.
  4. The tools must be aware of the ClassLoader considerations: different classes with the same name may be loaded by separate ClassLoaders. Thus, the tools must have a method to discover differences between classes other than class name alone.
  5. The tools must generate a final human-readable document, preferably HTML.
  6. There is no restriction in the requirements as to the earliest model of a JVM. This is left as an implementation detail.



SourceForge Logo
This space graciously provided by the SourceForge project
Copyright © 2002-2004 GroboUtils Project.
All rights reserved.