PackageDescription: BranchCoverage

Branch Coverage

Last published: June 5, 2014 by 'stm'

Defines 1 Classes
Extends 13 Classes

This package provides the capability to instrument code in order to assess branch coverage. This package is based on SUnitToo(lsverage). The main change besides making it work on VW7.6 is that it no longer uses a viral technique to install on methods. Instead you instrument a package that you wish to check the coverage of, then run your tests. It also doesn't depend on any particular test framework, although the package BranchCoverageSUnitToo is provided for additional SUnitToo support.

Right click on the package/bundle you wish to find the coverage of - near the bottom you should see three options for enable/disabling/clearing coverage. Enablement is for the selected package, the other two are global.

To use this package, first instrument the methods in the package you want to assess the coverage of:
BranchCoverage.CoverageWrapper installOnPundleNamed: 'MyPackageOrBundleName'

Then run your tests or otherwise use the system.

In order to uninstrument your package, run:
BranchCoverage.CoverageWrapper nuke.

You should then be able to browse your packages' classes and methods to see what has been run and what hasn't. When you're done looking at the results or otherwise want to reset them, run:
BranchCoverage.Coverages := EphemeronDictionary new.