Abstract
While verification methods are becoming more frequently integrated into software development projects, software testing is still the main method used to search for programming errors. Software testing approaches focus on methods for covering different execution paths of a program, e.g., covering all the statements, or covering all the possible tests. Such coverage criteria are usually approximated using some add-hoc heuristics. We present a tool for testing execution paths in sequential and concurrent programs. The tool, path exploration tool (PET), visualizes concurrent code as flow graphs, and allows the user to interactively select an (inter- leaved) execution path. It then calculates and displays the condition to execute such a path, and allows the user to easily modify the selection in order to cover additional related paths. We describe the design and architecture of this tool and suggest various extensions.
Keywords
These 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.
Download to read the full chapter text
Chapter PDF
References
R. Alur, G. Holzmann, D. Peled, An Analyzer for Message Sequence Charts, Software: Concepts and Tools, 17 (1996), 70–77.
S. Katz, D. Peled, Defining conditional independence using collapses, Theoretical Computer Science 101 (1992), 337–359.
ITU-T Recommendation Z.120, Message Sequence Chart (MSC), March 1993.
G. J. Myers, The Art of Software Testing, John Wiley and Sons, 1979.
A. Mazurkiewicz, Trace Theory, Advances in Petri Nets 1986, Bad Honnef, Germany, LNCS 255, Springer, 1987, 279–324.
E. Koutsofious, S. C. North, Drawing Graphs with dot, available on http://research.att.com in dist/drawdag/dotguide.ps.Z.
D. C. Oppen, A 2 Upper Bound on the Complexity of Presburger Arithmetic, Journal of Computer and System Sciences 16, 1978, 323–332.
B. Selic, G. Gullekson, P. T. Ward, Real-Time Object-Oriented Modeling, Wiley, 1993.
S. Rapps, E. J. Weyuker, Selecting Software Test Data Using Data Flow Information, Transactions on Software Engineering 11(4): 367–375 (1985).
M. Weiser, Program Slicing, IEEE Transactions on Software Engineering, 10(4), 1984, 352–357.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Gunter, E.L., Peled, D. (1999). Path Exploration Tool. In: Cleaveland, W.R. (eds) Tools and Algorithms for the Construction and Analysis of Systems. TACAS 1999. Lecture Notes in Computer Science, vol 1579. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-49059-0_28
Download citation
DOI: https://doi.org/10.1007/3-540-49059-0_28
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-65703-3
Online ISBN: 978-3-540-49059-3
eBook Packages: Springer Book Archive