EclipseCon 2007 March 5-8, Santa Clara California





The differences and benefits of Path, Branch and Code Coverage

Joe Ponczak (Codign Software)

· Short Talk

Wednesday, 13:50, 10 minutes | Room 210

7
·
8
·
9
·
10
·
11
·
12
·
13
·
14
·
15
·
16
·
17
·
18
·
19

data showing what code you did—or, more importantly, did not—execute. Coverage is the perfect complement to unit testing: Unit tests tell you whether your code performed as expected, and code coverage tells you what remains to be tested. Most developers understand this process and agree on its value proposition, and often target 100% coverage. Although 100% coverage is an admirable goal, 100% of the wrong type of coverage can lead to problems. A typical software development effort measures coverage in terms of the number of either statements or branches to be tested. Even with 100% statement or branch coverage, critical bugs still may be present in the logic of your code, leaving both developers and managers with a false sense of security. How can 100% coverage be insufficient? Because statement and branch coverage do not tell you whether the logic in your code was executed. Statement and branch coverage are great for uncovering glaring problems found in unexecuted blocks of code, but they often miss bugs related to both decision structures and decision interactions. Path coverage, on the other hand, is a more robust and comprehensive technique that helps reveal defects early.

As a Co-Founder of Codign Software, I have over 15 years' software development, QA and sales experience. Prior to starting Codign Software, I spent 9 years at McCabe & Associates, an industry leader in Application Lifecycle Management products. I have extensive experience with software metrics, testing methodologies and large scale implementations.

Floor Plan

Gold sponsors

Ingres logo

BEA logo

IBM logo

Business Objects logo

Klocwork logo

Windriver logo

Red Hat logo

Actuate logo

Silver sponsors

Compuware logo

Sybase logo

Google logo

Nexaweb

Activegrid

Genuitec

Instantiations

Cloudsmith

Code Gear

ACCESS

Oracle

Telelogic

Innoopract logo

Lynux Works

Media sponsors

Eclipse Magazine logo

GoingtoMeet.com logo

Methods and Tools logo

Eclipsezone logo

Addison-Wesley logo

Eclipse Magazin logo

Embedded Computing logo

SD Times logo

Enterprise Open Source logo

ACM Queue logo

TheServerSide Java Symposium

Eclipse Review logo

Software Test & Performance logo

Eclipse Developers Journal logo

Eclipse Source logo