4.8.08

Fundamental Metrics for Software Testing

The following are some typical software testing questions that require measurement to answer:

· How big is it?

o How long will it take to test it?

o How much will it cost to test it?

· What about the bugs?

o How bad were they? What type were they?

o What kind of bugs were found?

o How many of the bugs that were found were fixed?

o How many new bugs did the users find?

· How much of it has to be tested?

· Will it be ready on time?

· How good were the tests?

· How much did it cost to test it?

· Was the test effort adequate? Was it worth it?

· How did it perform?

Good answers to these questions require measurement. If testers don't have good answers to these questions, it is not because there are no applicable metrics; it's because they are not measuring.

Tests

There is no invariant, precise, internationally accepted standard unit that measures the size of a test, but that should not stop us from benefiting from identifying and counting tests. There are many types of tests, and they all need to be counted if the test effort is going to be measured. Techniques for defining, estimating, and tracking the various types of test units are presented in the next several chapters.

Tests have attributes such as quantity, size, importance or priority, and type

Sample Units (listed simplest to most complex):

· A keystroke or mouse action

· An SQL query

· A single transaction

· A complete function path traversal through the system

· A function-dependent data set