Minimum Number of Test Paths for Prime Path and other Structural Coverage Criteria
Anurag Dwarakanath, Aruna Jankiti

TL;DR
This paper introduces a method to determine the minimum number of test paths needed for various structural coverage criteria in software testing by transforming the problem into a flow network and solving it efficiently.
Contribution
It presents an optimal algorithm for minimizing test paths across multiple coverage criteria using flow network transformation, with proven complexity and practical evaluation.
Findings
The method achieves optimal test path counts for different coverage criteria.
The algorithm runs in $O(|V| |E|)$ time, matching the best known complexity.
Experimental results validate the method's effectiveness on real and random graphs.
Abstract
The software system under test can be modeled as a graph comprising of a set of vertices, (V) and a set of edges, (E). Test Cases are Test Paths over the graph meeting a particular test criterion. In this paper, we present a method to achieve the minimum number of Test Paths needed to cover different structural coverage criteria. Our method can accommodate Prime Path, Edge-Pair, Simple & Complete Round Trip, Edge and Node coverage criteria. Our method obtains the optimal solution by transforming the graph into a flow graph and solving the minimum flow problem. We present an algorithm for the minimum flow problem that matches the best known solution complexity of . Our method is evaluated through two sets of tests. In the first, we test against graphs representing actual software. In the second test, we create random graphs of varying complexity. In each test we measure the…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Software System Performance and Reliability · Software Reliability and Analysis Research
