Structural Statistical Software Testing exploits the control flow graph of the program being tested to construct test cases. While test cases can easily be extracted from {em feasible paths} in the control flow graph, that is, paths which are actually exerted for some values of the program input, the feasible path region is a tiny fraction of the graph paths (less than $10^{-5}]$ for medium size programs). The S4T algorithm presented in this paper aims to address this limitation; as an Active Relational Learning Algorithm, it uses the few feasible paths initially available to sample new feasible paths. The difficulty comes from the non-Markovian nature of the feasible path concept, due to the long-range dependencies between the nodes in the control flow graph. Experimental validation on real-world and artificial problems demonstrates significant improvements compared to the state of the art.
@InProceedings{baskiotis_et_al:DagSemProc.07161.9, author = {Baskiotis, Nicolas and Sebag, Michele}, title = {{Structural Sampling for Statistical Software Testing}}, booktitle = {Probabilistic, Logical and Relational Learning - A Further Synthesis}, pages = {1--13}, series = {Dagstuhl Seminar Proceedings (DagSemProc)}, ISSN = {1862-4405}, year = {2008}, volume = {7161}, editor = {Luc de Raedt and Thomas Dietterich and Lise Getoor and Kristian Kersting and Stephen H. Muggleton}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/DagSemProc.07161.9}, URN = {urn:nbn:de:0030-drops-13875}, doi = {10.4230/DagSemProc.07161.9}, annote = {Keywords: Active Relational Learning, Software Testing, Autonomic Computing, Parikh Maps} }
Feedback for Dagstuhl Publishing