Logic programming for software testing
We propose a methodology for using logic programming to software testing. The methodology is based on logic programming applications for the formation of decision-to-decision graph, path predicate evaluation and symbolic evaluation of output variables. We mention an efficient software testing scheme which utilizes multiple theories in logic, organized as a tree structure. An Algol-like language is used to present our approach.
KeywordsLogic Programming Software Testing Symbolic Execution Symbolic Evaluation Conditional Expression
Unable to display preview. Download preview PDF.
- L.A. Clarke, ”A system to generate test data and symbolically execute programs”, IEEE Trans. Software Eng., vol SE-2, pp 215–222, Sept. 1976.Google Scholar
- W. F. Clocksin and C.S. Mellish, ”Programming in Prolog”, Springer-Verlag, 1981.Google Scholar
- William Howden, ”Reliability of the path analysis testing strategy”, IEEE Transactions on Software Engineering, pp 208–215, September 1976, vol. SE-2, No. 3Google Scholar
- William Howden, ”Symbolic Testing and the DISSECT Symbolic Evaluation System”, IEEE Transactions on Software Engineering, pp 266–278, July 1977, vol. SE-3, No. 4.Google Scholar
- J.C. King, ”Symbolic execution and program testing”, Comm. of the ACM, vol 19, pp 385–394, July 1976.Google Scholar
- L. Sterling and E. Shapiro, ”The Art of Prolog”, Chapter 16, MIT Press, 1986.Google Scholar
- E.J. Weyuker and T.J. Ostrand, ”Theories of program testing and the applications of revealing subdomains”, IEEE Transactions on Software Engineering, pp 236–246, May 1980, vol. SE-6, No. 3.Google Scholar
- L.J. White and E.I. Cohen, ”A Domain Strategy for Computer Program Testing”, IEEE Trans. on Software Engineering, pp 247–257, May 1980.Google Scholar
- Clark and McCabe, ”Prolog: A language for implementing Expert Systems”, Machine Intelligence 10, John-Wiley and Sons Publishers, New York. 1980.Google Scholar
- D. H. D. Warren, ”Logic Programming and Compiler Writing”, Software — Practice and Experience 10, Number II, 1980.Google Scholar