Testing and Code Coverage

Stockholm -- 25th May 2008

Paul Johnson

www.pjcj.net

Thanks

init_logo.png

What is code coverage?

cover_me.jpg

Black Box Testing

black_box.jpg

White Box Testing

white_box.jpg

Where does it fit?

jigsaw.jpg

How do people normally write tests?

pen.jpg

Code coverage metrics

measure.jpg

Statement coverage

execution.jpg

Statement coverage

big_mistake.jpg

Branch Coverage

branch_cover1.jpg

Branch Coverage

branch_cover2.jpg

Branch Coverage

something_else.jpg

Path Coverage

path1.jpg

Path Coverage

hampton_court_maze.jpg

Path Coverage

table_mountain.jpg

Path Coverage

stop.jpg

Path Coverage

loops.jpg

Condition Coverage

exercises.jpg

Condition Coverage

short_circuit.jpg

Condition Coverage

short_circuit2.jpg

Condition Coverage

avril_lavigne_let_go.jpg

Condition Coverage

express_yourelf_madonna.jpg

Time Coverage

stopwatch.jpg

Documentation Coverage

documentation.jpg

How to use Code Coverage

improvement.jpg

How to use Code Coverage

olive_branch_dove.jpg

How to use Code Coverage

waterfall.jpg

How to use Code Coverage

belvedere.jpg

How to use Code Coverage

ideal.jpg

Which coverage metrics to use

simple.jpg

What percentages to aim for

aim.jpg

What percentages to aim for

aim2.jpg

Danger, Will Robinson! Danger!

danger_will_robinson.jpg

Why don't people use coverage

joy_division_unknown_pleasures.jpg

Problems of using coverage

use_it.jpg

Getting your code through the tool

bugs.jpg

Overheads

overhead.jpg

When the tests have run

drive.jpg

What code coverage won't do

impossible.jpg

Data Coverage

squares.jpg

Regular Expressions

regular_expressions.png

Devel::Cover

cycle_uphill.jpg

runops

op_tree.jpg

Back to Reality

guide.jpg

Other Languages

language.jpg

C and XS

xs.jpg

Devel::Cover

dummy.jpg

Future

future.jpg

Questions

questions.gif