Abstract
One of the most classical and successful software testing strategies is that of testing boundary values in the input domain (Reid 1997). In this paper we introduce a notion of boundary values for a finite subset of a metric space. Boundary values are distinguished between nucleus (central elements) and perimeter (peripheral elements). Nucleus (resp. perimeter) elements are those objects whose average distance from any other element in the subset is much smaller (resp. larger) than the average pairwise distance among elements of the subset. We propose efficient approximate algorithms that for any k generate both k nucleus and perimeter elements. Since relevant applications involve metric spaces of complex objects (e. g. large trees or graphs, long strings such as biosequences, high dimensional Euclidean spaces) whose pairwise distance calculation is heavy, then efficiency of such algorithms is very much affected by the number of distance calculations among objects of the subspace. Computing the exact k minimal elements in the nucleus and the k maximal elements in the perimeter requires an obvious quadratic solution in the size of the input set. However even a quadratic algorithm can be prohibitive due to a sufficiently large size of the input domain. Our approximate algorithms run in O (kn) time. Therefore since in software testing the size n of the input domain is much larger than the test size k then the quadratic brute force exact algorithm may become infeasible while our test generation algorithms may be successfully used.KeywordsApproximate AlgorithmNaive AlgorithmInput DomainFinal WinnerTest Generation AlgorithmThese keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.