skip to main content
article

Test conditions for fault classes in Boolean specifications

Published: 01 July 2007 Publication History

Abstract

Fault-based testing of software checks the software implementation for a set of faults. Two previous papers on fault-based testing [Kuhn 1999; Tsuchiya and Kikuno 2002] represent the required behavior of the software as a Boolean specification represented in Disjunctive Normal Form (DNF) and then show that faults may be organized in a hierarchy. This article extends these results by identifying necessary and sufficient conditions for fault-based testing. Unlike previous solutions, the formal analysis used to derive these conditions imposes no restrictions (such as DNF) on the form of the Boolean specification.

References

[1]
DeMillo, R. A., Lipton, R. J., and Sayward, F. G. 1978. Hints on test data selection: Help for the practicing programmer. IEEE Computer 11, 4 (April), 34--41.
[2]
DeMillo, R. A. and Offutt, A. J. 1991. Constraint-based automatic test data generation. IEEE Trans. Softw. Engin. 17, 9 (Sept.), 900--910.
[3]
Frankl, P. G. and Weiss, S. N. 1993. An experimental comparison of the effectiveness of branch testing and data flow testing. IEEE Trans. Softw. Engin. 19, 8 (Aug.), 774--787.
[4]
Hierons, R. M. 2002. Comparing test sets and criteria in the presence of test hypotheses and fault domains. ACM Trans. Softw. Engin. Method. 11, 4 (Oct.), 427--448.
[5]
IEEE. 1990. IEEE Standard Glossary of Software Engineering Terminology, ANSI/IEEE Std. 610.12. New York: Institute of Electrical and Electronics Engineers.
[6]
Kapoor, K. and Bowen, J. P. 2004. Ordering mutants to minimise test effort in mutation testing. In 4th International Workshop, Formal Approaches to Software Testing (FATES). Lecture Notes in Computer Science, vol. 3395. Springer-Verlag, 195--209.
[7]
Kapoor, K. and Bowen, J. P. 2005. A formal analysis of MCDC and RCDC test criteria. Softw. Test. Verificat. Reliab. 15, 1 (March), 21--40.
[8]
Kuhn, D. R. 1999. Fault classes and error detection capability of specification-based testing. ACM Trans. Softw. Engin. Method. 8, 4 (Oct.), 411--424.
[9]
Lau, M. F. and Yu, Y. T. 2005. An extended fault class hierarchy for specification-based testing. ACM Trans. Softw. Engin. Method. 14, 3 (July), 247--276.
[10]
Morell, L. J. 1990. A theory of fault-based testing. IEEE Trans. Softw. Engin. 16, 8 (Aug.), 844--857.
[11]
Offutt, A. J. 1992. Investigations of the software testing coupling effect. ACM Trans. Softw. Engin. Method. 1, 1 (Jan.), 5--20.
[12]
Offutt, A. J., Xiong, Y., and Liu, S. 1999. Criteria for generating specification-based tests. In 5th International Conference on Engineering of Complex Computer Systems (ICECCS). IEEE, 119--129.
[13]
Okun, V., Black, P. E., and Yesha, Y. 2004. Comparison of fault classes in specification-based testing. Inform. Softw. Tech. 46, 8 (June), 525--533.
[14]
Paradkar, A., Tai, K. C., and Vouk, M. A. 1996. Automatic test-generation for predicates. IEEE Trans. Reliab. 45, 4 (Dec.), 515--530.
[15]
Richardson, D. J. and Thompson, M. C. 1993. An analysis of test data selection criteria using the RELAY model of fault detection. IEEE Trans. Softw. Engin. 19, 6 (June), 533--553.
[16]
RTCA. 1992. Software Considerations in Airborne Systems and Equipment Certification, DO-178B. Washington DC, USA.
[17]
Tai, K. C. 1996. Theory of fault-based predicate testing for computer programs. IEEE Trans. Softw. Engin. 22, 8 (Aug.), 552--562.
[18]
Tsuchiya, T. and Kikuno, T. 2002. On fault classes and error detection capability of specification-based testing. ACM Trans. Softw. Engin. Method. 11, 1 (Jan.), 58--62.
[19]
Vilkomir, S. A. and Bowen, J. P. 2006. From MC/DC to RC/DC: Formalization and analysis of control-flow testing criteria. Formal Aspects Comput. 18, 1 (Mar.), 42--62.
[20]
Vouk, M. A., Tai, K. C., and Paradkar, A. 1994. Empirical studies of predicate-based software testing. In 5th International Symposium on Software Reliability Engineering. IEEE Computer Society, 55--64.
[21]
Wah, K. S. H. T. 2003. An analysis of the coupling effect I: Single test data. Science Comput. Program. 48, 119--161.
[22]
Weyuker, E. J. 2002. Thinking formally about testing without a formal specification. In Formal Approaches to Testing of Software (FATES), A Satellite Workshop of CONCUR'02. 1--10.
[23]
Weyuker, E. J., Goradia, T., and Singh, A. 1994. Automatically generating test data from a Boolean specification. IEEE Trans. Softw. Engin. 20, 5 (May), 353--363.
[24]
Wong, W. E. and Mathur, A. P. 1995. Reducing the cost of mutation testing: An empirical study. J. Syst. Softw. 31, 3 (Dec.), 185--196.
[25]
Zhu, H., Hall, P. A. V., and May, J. H. R. 1997. Software unit test coverage and adequacy. ACM Comput. Surv. 29, 4 (Dec.), 366--427.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Software Engineering and Methodology
ACM Transactions on Software Engineering and Methodology  Volume 16, Issue 3
July 2007
96 pages
ISSN:1049-331X
EISSN:1557-7392
DOI:10.1145/1243987
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 July 2007
Published in TOSEM Volume 16, Issue 3

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Boolean specification
  2. Fault-based testing
  3. fault classes

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)7
  • Downloads (Last 6 weeks)2
Reflects downloads up to 06 Jan 2025

Other Metrics

Citations

Cited By

View all

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media