A major White box testing technique is Code Coverage analysis. Code Coverage analysis, eliminates gaps in a test case suite.It identifies areas of a program that are not exercised by a set of test cases.Once gaps are identified, you create test cases to verify untested parts of code, thereby increase the quality of the software product
There are automated tools available to perform Code coverage analysis. Below are a few coverage analysis techniques
Statement Coverage This technique requires every possible statement in the code to be tested at least once during the testing process. Tools: An example of a tool that handles statement coverage for C++ applications is Cantata++
Branch Coverage – This technique checks every possible path (if-else and other conditional loops) of a software application. Tools: An example of a tool that handles branch coverage testing for C, C++ and Java applications is TCAT-PATH
Apart from above, there are numerous coverage types such as Condition Coverage, Multiple Condition Coverage, Path Coverage, Function Coverage etc.Each technique has its own merits and attempts to test (cover) all parts of software code.
Using Statement and Branch coverage you generally attain 80-90% code coverage which is sufficient.