White box testing involves close examination of a program's internal structure and logic flows. Test cases are designed to exercise specific conditions and loops by following logical paths through the code. This ensures all independent paths, logical decisions, loops, and internal data structures are tested. Basis path testing is a white box technique that uses flow graphs and cyclomatic complexity to identify the minimum number of test cases needed to guarantee every statement is executed at least once. Cyclomatic complexity represents the number of independent paths in a program and is used to derive a basis set of test cases that force execution of every path.