[Statement Coverage] ──> [Path Coverage] ──> [Dataflow Coverage (du-paths)] (Basic) (Deep) (Data Lifecycle) Path Testing
Divides input data into valid and invalid partitions to reduce the total number of required test cases while maintaining thorough coverage.
While newer editions exist, many practitioners and students still seek the 3rd edition for its specific clarity on the of testing. software testing paul c jorgensen pdf 3rd edition
The 3rd edition emphasizes the transition from traditional testing to more modern, iterative approaches. Jorgensen bridges the gap between theoretical models (like graph theory) and practical application. 🔑 Key Concepts Covered
Jorgensen views software testers as artisans. The book emphasizes that high-quality testing requires a mix of disciplined mathematical models and creative problem-solving. It rejects the idea of testing as an afterthought, arguing instead that testing must be deeply integrated into the entire development lifecycle. Key Mathematical Foundations Jorgensen bridges the gap between theoretical models (like
Here, the focus shifts to the internal structure of the code. Key techniques include:
Testing combinations of boundary values across multiple input variables simultaneously, assuming that failures interact. Equivalence Class Testing It rejects the idea of testing as an
Using Thomas McCabe’s Cyclomatic Complexity metric, Jorgensen demonstrates how to calculate the upper bound for the number of test cases necessary to achieve basis path coverage. The formula: