ACM Home Page
Please provide us with feedback. Feedback
Software unit test coverage and adequacy
Full text PdfPdf (477 KB)
Source ACM Computing Surveys (CSUR) archive
Volume 29 ,  Issue 4  (December 1997) table of contents
Pages: 366 - 427  
Year of Publication: 1997
ISSN:0360-0300
Authors
Hong Zhu  Nanjing Univ., Nanjing, China
Patrick A. V. Hall  The Open Univ., Milton Keynes, UK
John H. R. May  The Open Univ., Milton Keynes, UK
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 144,   Downloads (12 Months): 948,   Citation Count: 79
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/267580.267590
What is a DOI?

ABSTRACT

Objective measurement of test quality is one of the key issues in software testing. It has been a major research focus for the last two decades. Many test criteria have been proposed and studied for this purpose. Various kinds of rationales have been presented in support of one criterion or another. We survey the research work in this area. The notion of adequacy criteria is examined together with its role in software dynamic testing. A review of criteria classification is followed by a summary of the methods for comparison and assessment of criteria.


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
2
 
3
AMLA, N. AND AMMANN, P. 1992. Using Z specifications in category partition testing. In Proceedings of the Seventh Annual Conference on Computer Assurance (June), IEEE, 3-10.
 
4
AMMANN, P. AND OFFUTT, J. 1994. Using formal methods to derive test frames in categorypartition testing. In Proceedings of the Ninth Annual Conference on Computer Assurance (Gaithersburg, MD, June), IEEE, 69-79.
 
5
 
6
BAKER, A. L., HOWATT, J. W., AND BIEMAN, J. M. 1986. Criteria for finite sets of paths that characterize control flow. In Proceedings of the 19th Annual Hawaii International Conference on System Sciences, 158-163.
 
7
BASILI, V. R. AND RAMSEY, g. 1984. Structural coverage of functional testing. Tech. Rep. TR- 1442, Department of Computer Science, University of Maryland at College Park, Sept.
 
8
 
9
BAZZICHI, F. AND SPADAFORA, I. 1982. An automatic generator for compiler testing. IEEE Trans. Softw. Eng. SE-8, 4 (July), 343-353.
 
10
 
11
 
12
 
13
BENTLY, W. G. AND MILLER, E.F. 1993. CT coverage-initial results. Softw. Quality J. 2, 1, 29-47.
 
14
 
15
 
16
 
17
 
18
BUDD, T.A. 1981. Mutation analysis: Ideas, examples, problems and prospects. In Computer Program Testing, Chandrasekaran and Radicchi, Eds., North Holland, 129-148.
 
19
BUDD, T. A. AND ANGLUIN, D. 1982. Two notions of correctness and their relation to testing. Acta Inf. 18, 31-45.
 
20
BUDD, T. A., LIPTON, R. J., SAYWARD, F. G., AND DEMILLO, R.A. 1978. The design of a prototype mutation system for program testing. In Proceedings of National Computer Conference, 623-627.
 
21
 
22
 
23
CHANDRASEKARAN, B. AND RADICCHI, S. (EDS.) 1981. Computer Program Testing, North- Holland.
 
24
CHANG, C. C. AND KEISLER, H.J. 1973. Model Theory. North-Holland, Amsterdam.
 
25
 
26
 
27
28
 
29
 
30
CLARKE, L. A., HASSELL, J., AND RICHARDSON, D. J. 1982. A close look at domain testing. IEEE Trans. Softw. Eng. SE-8, 4 (July), 380-390.
 
31
 
32
 
33
 
34
DEMILLO, R. A. AND MATHUR, A. P. 1990. On the use of software artifacts to evaluate the effectiveness of mutation analysis for detecting errors in production software. In Proceedings of 13th Minnowbrook Workshop on Software Engineering (July 24-27, Blue Mountain Lake, NY), 75-77.
 
35
36
 
37
DEMILLO, R. A., GUINDI, D. S., MCCRACKEN, W. M., OFFUTT, A. J., AND KING, K. N. 1988. An extended overview of the Mothra software testing environment. In Proceedings of SIG- SOFT Symposium on Software Testing, Analysis and Verification 2, (July), 142-151.
 
38
DEMILLO, R. A., LIPTON, R. J., AND SAYWARD, F.G. 1978. Hints on test data selection: Help for the practising programmer. Computer 11, (April), 34-41.
 
39
 
40
 
41
DIJKSTRA, E.W. 1972. Notes on structured programming. In Structured Programming, by O.-J. Dahl, E. W. Dijkstra, and C. A. R. Hoare, Academic Press.
 
42
 
43
 
44
DOWNS, T. AND GARRONE, P. 1991. Some new models of software testing with performance comparisons. IEEE Trans. Rel. 40, 3 (Aug.), 322-328.
45
 
46
DURAN, J. W. AND NTAFOS, S. 1984. An evaluation of random testing. IEEE Trans. Softw. Eng. SE-IO, 4 (July), 438-444.
 
47
 
48
 
49
 
50
 
51
FOSTER, Z. n. 1980. Error sensitive test case analysis (ESTCA). IEEE Trans. Softw. Eng. SE-6, 3 (May), 258-264.
 
52
 
53
 
54
 
55
 
56
57
 
58
 
59
GAUDEL, M.-C. AND MARRE, B. 1988. Algebraic specifications and software testing: Theory and application. In Rapport LRI 407.
60
 
61
 
62
GOLD, E. M. 1967. Language identification in the limit. Inf. Cont. 10, 447-474.
 
63
GOODENOUGH, J. B. AND GERHART, S. L. 1975. Toward a theory of test data selection. IEEE Trans. Softw. Eng. SE-3 (June).
 
64
GOODENOUGH, J. B. AND GERHART, S. L. 1977. Toward a theory of testing: Data selection criteria. In Current Trends in Programming Methodology, Vol. 2, R. T. Yeh, Ed., Prentice- Hall, Englewood Cliffs, NJ, 44-79.
 
65
GOPAL, A. AND BUDD, T. 1983. Program testing by specification mutation. Tech. Rep. TR 83- 17, University of Arizona, Nov.
 
66
GOURLAY, J. 1983. A mathematical framework for the investigation of testing. IEEE Trans. Softw. Eng. SE-9, 6 (Nov.), 686-709.
 
67
 
68
HALL, P. A. V. AND HIERONS, R. 1991. Formal methods and testing. Tech. Rep. 91/16, Dept. of Computing, The Open University.
 
69
 
70
71
 
72
HAMLET, R.G. 1977. Testing programs with the aid of a compiler. IEEE Trans. Softw. Eng. 3, 4 (July), 279-290.
73
74
 
75
 
76
HARTWICK, D. 1977. Test planning. In Proceedings of National Computer Conference, 285- 294.
 
77
 
78
 
79
HERMAN, P. 1976. A data flow analysis approach to program testing. Aust. Comput. J. 8, 3 (Nov.), 92-96.
 
80
 
81
HIERONS, R. 1992. Software testing from formal specification. Ph.D. Thesis, Brunel University, UK.
 
82
83
 
84
 
85
HOWDEN, W.E. 1975. Methodology for the generation of program test data. IEEE Trans. Comput. 24, 5 (May), 554-560.
 
86
HOWDEN, W. E. 1976. Reliability of the path analysis testing strategy. IEEE Trans. Softw. Eng. SE-2, (Sept.), 208-215.
 
87
HOWDEN, W.E. 1977. Symbolic testing and the DISSECT symbolic evaluation system. IEEE Trans. Softw. Eng. SE-3 (July), 266-278.
 
88
HOWDEN, W.E. 1978a. Algebraic program testing. ACTA Inf. 10, 53-66.
 
89
HOWDEN, W.E. 1978b. Theoretical and empirical studies of program testing. IEEE Trans. Softw. Eng. SE-4, 4 (July), 293-298.
 
90
HOWDEN, W.E. 1978c. An evaluation of the effectiveness of symbolic testing. Softw. Pract. Exper. 8, 381-397.
 
91
HOWDEN, W. E. 1980a. Functional program testing. IEEE Trans. Softw. Eng. SE-6, 2 (March), 162-169.
 
92
HOWDEN, W. E. 1980b. Functional testing and design abstractions. J. Syst. Softw. 1, 307-313.
 
93
94
 
95
HOWDEN, W. E. 1982b. Weak mutation testing and completeness of test sets. IEEE Trans. Softw. Eng. SE-8, 4 (July), 371-379.
 
96
HOWDEN, W.E. 1985. The theory and practice of functional testing. IEEE Softw. (Sept.), 6-17.
 
97
 
98
 
99
 
100
INCE, D. C. 1987. The automatic generation of test data. Comput. J. 30, 1, 63-69.
 
101
INCE, D.C. 1991. Software testing. In Software Engineer's Reference Book, J. A. McDermid, Ed., Butterworth-Heinemann (Chapter 19).
 
102
 
103
KEMMERER, R.A. 1985. Testing formal specifications to detect design errors. IEEE Trans. Softw. Eng. SE-11, 1 (Jan.), 32-43.
 
104
 
105
 
106
 
107
KOSARAJU, S. 1974. Analysis of structured programs. J. Comput. Syst. Sci. 9, 232-255.
 
108
KRANTZ, D. H., LUCE, R. D., SUPPES, P., AND TVER- SKY, A. 1971. Foundations of Measurement, Vol. 1: Additive and Polynomial Representations. Academic Press, New York.
 
109
 
110
 
111
LASKI, J. AND KOREL, B. 1983. A data flow oriented program testing strategy. IEEE Trans. Softw. Eng. SE-9, (May), 33-43.
 
112
 
113
LAUTERBACH, L. AND RANDALL, W. 1989. Experimental evaluation of six test techniques. In Proceedings of COMPASS 89 (Washington, DC, June), 36-41.{
 
114
 
115
LINDQUIST, T. E. AND JENKINS, g.R. 1987. Test case generation with IOGEN. In Proceedings of the 20th Annual Hawaii International Conference on System Sciences, 478-487.
116
 
117
LIu, L.-L. AND ROBSON, D. J. 1989. Symbolic evaluation in software testing, the final report. Computer Science Tech. Rep. 10/89, School of Engineering and Applied Science, University of Durham, June.
 
118
LUCE, R. D., KRANTZ, D. H., SUPPES, P., AND TVER- SKY, A. 1990. Foundations of Measurement, Vol. 3: Representation, Axiomatization, and Invariance. Academic Press, San Diego.
 
119
120
 
121
MATHUR, A. P. 1991. Performance, effectiveness, and reliability issues in software testing. In Proceedings of the 15th Annual International Computer Software and Applications Conference (Tokyo, Sept.), 604-605.
 
122
MARSHALL, A. C. 1991. A Conceptual model of software testing. J. Softw. Test. Ver. Rel. 1, 3 (Dec.), 5-16.
 
123
MCCABE, T. g. 1976. A complexity measure. IEEE Trans. Softw. Eng. SE-2, 4, 308-320.
 
124
MCCABE, T. J. (ED.) 1983. Structured Testing. IEEE Computer Society Press, Los Alamitos, CA.
 
125
 
126
MCMULLIN, P. R. AND GANNON, J.D. 1983. Combining testing with specifications: A case study. IEEE Trans. Softw. Eng. SE-9, 3 (May), 328-334.
 
127
MEEK, B. AND SIU, K.K. 1988. The effectiveness of error seeding. Alvey Project SE/064: Quality evaluation of programming language processors, Report No. 2, Computing Centre, King's College London, Oct.
 
128
MILLER, E. AND HOWDEN, W.E. 1981. Tutorial: Software Testing and Validation Techniques, (2nd ed.). IEEE Computer Society Press, Los Alamitos, CA.
 
129
 
130
131
 
132
 
133
 
134
 
135
NTAFOS, S.C. 1984. On required element testing. IEEE Trans. Softw. Eng. SE-IO, 6 (Nov.), 795-803.
 
136
137
138
139
 
140
 
141
142
143
 
144
 
145
PAIGE, M. R. 1975. Program graphs, an algebra, and their implication for programming. IEEE Trans. Softw. Eng. SE-1, 3, (Sept.), 286-291.
 
146
PAIGE, M. R. 1978. An analytical approach to software testing. In Proceedings COMP- SAC'78, 527-532.
147
 
148
 
149
 
150
PETSCHENIK, N.H. 1985. Practical priorities in system testing. IEEE Softw. (Sept.), 18-23.
 
151
152
 
153
 
154
 
155
PROGRAM ANALYSIS LTD., UK. 1992. Testbed technical description. May.
 
156
 
157
RICHARDSON, D. J. AND CLARKE, L. A. 1985. Partition analysis: A method combining testing and verification. IEEE Trans. Softw. Eng. SE-11, 12 (Dec.), 1477-1490.{
158
 
159
RICHARDSON, D. J. AND THOMPSON, M. C. 1988. The RELAY model of error detection and its application. In Proceedings of SIG- SOFT Symposium on Software Testing, Analysis, and Verification 2 (July).
 
160
 
161
RIDDELL, I. J., HENNELL, M. A., WOODWARD, M. R., AND HEDLEY, D. 1982. Practical aspects of program mutation. Tech. Rep., Dept. of Computational Science, University of Liverpool, UK.
 
162
ROBERTS, F.S. 1979. Measurement Theory, Encyclopedia of Mathematics and Its Applications, Vol. 7. Addison-Wesley, Reading, MA.
 
163
 
164
 
165
RUDNER, B. 1977. Seeding/tagging estimation of software errors: Models and estimates. Rome Air Development Centre, Rome, NY, RADC-TR-77-15, also AD-A036 655.
 
166
 
167
 
168
SOFTWARE RESEARCH. 1992. Software Test- Works--Software Testers Workbench System. Software Research, Inc.
 
169
 
170
 
171
 
172
SUPPES, P., KRANTZ, D. H., LUCE, R. D., AND TVER- SKY, A. 1989. Foundations of Measurement, Vol. 2: Geometrical, Threshold, and Probabilistic Representations. Academic Press, San Diego.
 
173
 
174
TAKAHASHI, M. AND KAMAYACHI, Y. 1985. An empirical study of a model for program error prediction. IEEE, 330-336.
 
175
THAYER, R., LIPOW, M., AND NELSON, E. 1978. Software Reliability. North-Holland.
 
176
 
177
 
178
 
179
180
 
181
 
182
WEISER, M. D., GANNON, J. D., AND MCMULLIN, P.R. 1985. Comparison of structural test coverage metrics. IEEE Softw. (March), 80-85.
 
183
 
184
WEYUKER, E.J. 1979a. The applicability of program schema results to programs. Int. J. Comput. Inf. Sci. 8, 5, 387-403.
 
185
WEYUKER, E.J. 1979b. Translatability and decidability questions for restricted classes of program schema. SIAM J. Comput. 8, 5, 587- 598.
 
186
WEYUKER, E.J. 1982. On testing non-testable programs. Comput. J. 25, 4, 465-470.
187
 
188
189
 
190
 
191
WEYUKER, E. J. 1988c. An empirical study of the complexity of data flow testing. In Proceedings of SIGSOFT Symposium on Software Testing, Analysis, and Verification 2 (July), 188-195.
 
192
 
193
WEYUKER, E. J. AND DAVIS, M. 1983. A formal notion of program-based test data adequacy. Inf Cont. 56, 52-71.
 
194
 
195
WEYUKER, E. J. AND OSTRAND, T.J. 1980. Theories of program testing and the application of revealing sub-domains. IEEE Trans. Softw. Eng. SE-6, 3 (May), 236-246.
 
196
WHITE, L.J. 1981. Basic mathematical definitions and results in testing. In Computer Program Testing, B. Chandrasekaran and S. Radicchi, Eds., North-Holland, 13-24.
 
197
WHITE, L. J. AND COHEN, E.I. 1980. A domain strategy for computer program testing. IEEE Trans. Softw. Eng. SE-6, 3 (May), 247-257.
 
198
 
199
WICHMANN, B.A. 1993. Why are there no measurement standards for software testing? Comput. Stand. Interfaces 15, 4, 361-364.
 
200
WICHMANN, B. A. AND COX, M. G. 1992. Problems and strategies for software component testing standards. J. Softw. Test. Ver. Rel. 2, 167-185.
 
201
WILD, C., ZEIL, S., CHEN, J., AND FENG, G. 1992. Employing accumulated knowledge to refine test cases. J. Softw. Test. Ver. Rel. 2, 2 (July), 53-68.
 
202
WISZNIEWSKI, B.W. 1985. Can domain testing overcome loop analysis? IEEE, 304-309.
 
203
WOODWARD, M. R. 1991. Concerning ordered mutation testing of relational operators. J. Softw. Test. Ver. Rel. 1, 3 (Dec.), 35-40.
 
204
WOODWARD, M. R. 1993. Errors in algebraic specifications and an experimental mutation testing tool. Softw. Eng. J. (July), 211-224.
 
205
WOODWARD, M. R. AND HALEWOOD, K. 1988. From weak to strong--dead or alive? An analysis of some mutation testing issues. In Proceedings of Second Workshop on Software Testing, Verification and Analysis (July) 152- 158.
 
206
WOODWARD, M. R., HEDLEY, D., AND HENNEL, M.A. 1980. Experience with path analysis and testing of programs. IEEE Trans. Softw. Eng. SE-6, 5 (May), 278-286.
 
207
WOODWARD, M. R., HENNEL, M. A., AND HEDLEY, D. 1980. A limited mutation approach to program testing. Tech. Rep. Dept. of Computational Science, University of Liverpool.
 
208
 
209
ZEIL, S. J. 1983. Testing for perturbations of program statements. IEEE Trans. Softw. Eng. SE-9, 3, (May), 335-346.
 
210
 
211
212
 
213
ZHU, H. 1995a. Axiomatic assessment of control flow based software test adequacy criteria. Softw. Eng. J. (Sept.), 194-204.
 
214
ZHU, H. 1995b. An induction theory of software testing. Sci. China 38 (Supp.) (Sept.), 58-72.
 
215
 
216
ZHU, H. 1996b. A formal interpretation of software testing as inductive inference. J. Softw. Test. Ver. Rel. 6 (July), 3-31.
 
217
ZHU, H. AND HALL, P. A. V. 1992a. Test data adequacy with respect to specifications and related properties. Tech. Rep. 92/06, Department of Computing, The Open University, UK, Jan.
 
218
ZHU, H. AND HALL, P. A.V. 1992b. Testability of programs: Properties of programs related to test data adequacy criteria. Tech. Rep. 92/05, Department of Computing, The Open University, UK, Jan.
 
219
 
220
ZHU, H., HALL, P. A. V., AND MAY, J. 1992. Inductive inference and software testing. J. Softw. Test. Ver. Rel. 2, 2 (July), 69-82.
 
221
ZHU, H., HALL, P. A. V., AND MAY, J. 1994. Understanding software test adequacy--an axiomatic and measurement approach. In Mathematics of Dependable Systems, Proceedings of IMA First Conference (Sept., London), Oxford University Press, Oxford.
 
222

CITED BY  79


REVIEW

"Curtis Roger Cook : Reviewer"

The authors survey research in test data adequacy criteria, or criteria that test sets should satisfy. Since finding adequacy criteria that are both reliable and valid is impractical, research has shifted to finding practical approximations fo  more...

Collaborative Colleagues:
Hong Zhu: colleagues
Patrick A. V. Hall: colleagues
John H. R. May: colleagues