|
ABSTRACT
Given a program P and a set of alternative programs P, we generate a sequence of test cases that are adequate, in the sense that they distinguish the given program from all alternatives. The method is related to fault-based approaches to program testing, but programs in P need not be simple mutations of P. The technique for generating an adequate test set is based on the inductive learning of programs from finite sets of input-output examples: given a partial test set, we generate inductively a program P'E P which is consistent with P on those input values; then we look for an input value that distinguishes P from P', and repeat the process until no program except P can be induced from the generated examples. We show that the so obtained test set is adequate w.r.t. the alternatives belonging to P. The method is made possible by a practical program induction procedure, which has evolved from recent research in Machine Learning and Inductive Logic Programming.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
F. Bazzichi and I. Spadafora. An Automatic Generator for Compiler Testing. IEEE Trans. on Software Engineering, 8(4):343- 353, 1982.
|
| |
2
|
F. Bergadano, Testing Based on Inductive Inference. Tech. Report 92.8.1, CS Dept., University of Torino, 1992.
|
| |
3
|
|
| |
4
|
|
| |
5
|
F. Bergadano and D, Gunetti. An interactive system to learn functional logic programs. In Proc. 13th Int. Joint. Conf. on Artificial Intelligence, Chambery, France, 1993. Morgan Kaufmann.
|
| |
6
|
|
| |
7
|
T. A. Budd and D. Angluin. Two Notions of Correctness and their Relation to Testing. Acts Informatica, 18:31-45, 1982.
|
| |
8
|
|
| |
9
|
N. Choquet. Test Data Generation Using Prolog with Constraints. In Proc. Workshop on Soflware Testing, pages 132-141, Los Alamitos, CA, 1986.
|
| |
10
|
L. A. Clarke, J. Hassell, and D. J. Richardson. A Close Look at Domain Testing. IEEE Trans. on Software Engineering, 8(4):380- 390, 1982.
|
 |
11
|
|
| |
12
|
R. A. DeMillo, R. J. Lipton, and F. G. Sayward. Hints on Test Data Selection: Help for the Practicing Programmer. IEEE Computer, pages 34-41, 1978. April.
|
| |
13
|
|
| |
14
|
|
| |
15
|
Luc de Raedt , Gunther Sablon , Maurice Bruynooghe, Using interactive concept learning for knowledge-base validation and verification, Validation, verification and test of knowledge-based systems, John Wiley & Sons, Inc., New York, NY, 1991
|
| |
16
|
M. E. Gold. Language Identification in the Limit. Information and Control, 10:447-474, 1967.
|
| |
17
|
|
| |
18
|
R. G. Hamlet. Reliability y Theory of Program Testing. Acts Informatica, 16:31-43, 1981.
|
| |
19
|
|
| |
20
|
|
| |
21
|
W. E. Howden. Reliability of the Path Analysis Testing Strategy. IEEE Trans. on Soflware Engineering, 2 :208-215, 1976.
|
| |
22
|
W. E. Howden. Functional Program Testing. IEEE Tmns. on Sofiware Engineering, 6(2):162-169, 1980.
|
| |
23
|
W. E. Howden. Weak Mutation Testing and Completeness of Test Sets. IEEE Trans. on Soflware Engineering, 8(4):371-379, 1982.
|
| |
24
|
|
| |
25
|
|
| |
26
|
St rat egies for Inductive Learning of Simple Prolog Programs. In Proc. Int. Joint Conj. on Artificial Intelligence, pages 757- 761, Sydney, Australia, 1991.
|
| |
27
|
R. S. Michalski. Pattern Recognition as Rule-Guided Inductive Inference. IEEE Trans. on PAMI, 2:349-361, 1980.
|
| |
28
|
R. S. Michalski. A Theory and Methodology of Inductive Learning. Artificial Intelligence, 20:111-161, 1983.
|
| |
29
|
L. J. Morel.1. Theoretical insights into fault-based testing. In Proc. Workshop on Software Testing, Verification and Analysis, pages 45-62, Banff, Canada, 1988.
|
| |
30
|
S. Muggleton, editor. Inductive Logic Programming. Academic Press, 1991.
|
 |
31
|
A. Offutt, The coupling effect: fact or fiction, Proceedings of the ACM SIGSOFT '89 third symposium on Software testing, analysis, and verification, p.131-140, December 13-15, 1989, Key West, Florida, United States
|
| |
32
|
|
| |
33
|
P. Strooper and D. Hoffman. Prolog Testing of C modules. In Proc. Int. Conf. on Logic Programming, pages 596-608, 1991.
|
 |
34
|
|
| |
35
|
|
| |
36
|
|
 |
37
|
|
 |
38
|
|
|