Change-Based Test Management: Improving the Software Validation Process

How Test Prioritization Works

The largest benefit of CBTM is the ability to prioritize your testing. By doing so, you are running the tests most likely to find defects before you run any others. Test prioritization involves risk, but using CBTM helps you understand and manage that risk. Once you collect a code delta, you can determine the areas of code that have changed. Breaking this down into a percentage of the total change allows you to determine a weighting factor for that particular area.

Example 2.8

A product consists of 200 files written in C++. The developers add several new features to the product as well as a few defect fixes. Running a code delta generator provides the results in Table 2.3. The first column lists the number of lines changed in each file. The second column lists the number of functions changed. The third column lists the percentage of the total number of lines changed that occurred in the file. The final column lists the percentage of the total number of functions changed that occurred in the file.

Table 2.3: Sample Code Delta Summary

Filename

Lines Changed

Functions Changed

Line Percentage

Function Percentage

Save.c

20

3

6%

9%

About.c

4

1

1%

3%

memLoader.c

30

5

9%

15%

Display.c

50

7

15%

24%

memSort.c

130

4

40%

12%

Init.c

30

8

9%

21%

Common.c

60

5

19%

15%

Total

324

33

Assuming we are working on a function level scope, we see that Display.c is the...

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Pinch Valves
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.