Abstract
For model-based black-box testing, test cases are often selected from the syntactic appearance of the specification of the system under test, according to a pre-given test data adequacy criterion. We introduce a novel approach that is semantics-based, independent of the syntactic appearance of the system specification. Basically, we model the system under test as a random variable, whose sample space consists of all possible behavior sets (with respect to the specification) over the known interface of the black-box. The entropy of the system is measured as the (Shannon) entropy of the random variable. In our criterion, the coverage of a test set is measured as the expected amount of entropy decrease (i.e. the expected amount of information gained) once the test set is run. Since our criterion is syntactic independent, we study the notion of information-optimal software testing where, within a given constraint, a test set is selected to gain the most information.
Similar content being viewed by others
References
Ammann P, Offutt J (2008) Introduction to Software Testing. Cambridge University Press, Cambridge
Ammann P, Offutt J, Huang H (2003) Coverage criteria for logical expressions. In: ISSRE ’03: Proceedings of the 14th International Symposium on Software Reliability Engineering. IEEE Computer Society, USA, pp 99–107
Andrés C, Llana L, Rodríguez I (2009) Formally transforming user-model testing problems into implementer-model testing problems and viceversa. J Log Algebraic Program 78(6): 425–453
Beizer B (1995) Black-box testing: techniques for functional testing of software and systems. Wiley, New York
Broy M, Jonsson B, Katoen J-P, Leucker M, Pretschner A (2005) Model-based testing of reactive systems: advanced lectures. In: Lecture notes in computer science, vol 3472. Springer, Berlin
Clarke EM, Grumberg O, Peled DA (1999) Model checking. The MIT Press, Cambridge
Cover TM, Thomas JA (2006) Elements of information theory, 2nd edn. Wiley, New York
Duran JW, Ntafos S (1984) An evaluation of random testing. IEEE Trans Softw Eng 10(4): 438–444
Gaudel MC (1995) Testing can be formal, too. In: TAPSOFT ’95: Proceedings of the 6th international joint conference CAAP/FASE on theory and practice of software development, 1995. Lecture notes in computer science, vol 915. Springer, Berlin, pp 82–96
Goodenough JB, Gerhart SL (1975) Toward a theory of test data selection. In: Proceedings of the international conference on reliable software. ACM, New York, pp 493–510
Harel D (1987) Statecharts: a visual formalism for complex systems. Sci Comput Program 8(3): 231–274
Harel D, Pnueli A (1985) On the development of reactive systems. In: Apt KR (ed) Logics and models of concurrent systems, vol 13. NATO ASI Series. Springer, New York, pp 477–498
Heitmeyer C (2002) Software cost reduction. Encyclopedia of software engineering, 2nd edn. Wiley, New York
Holzmann GJ (1997) The model checker SPIN. IEEE Trans Softw Eng 23(5): 279–295
Hopcroft JE, Motwani R, Ullman JD (2007) Introduction to automata theory, languages, and computation, 3rd edn. Addison-Wesley, Reading
Ladyman J (2007) Physics and computation: the status of landauer’s principle. In: CiE ’07: Proceedings of the 3rd conference on computability in Europe, 2007. Lecture notes in computer science, vol 4497. Springer, Berlin, pp 446–454
Landauer R (1961) Irreversibility and heat generation in the computing process. IBM J Res Dev 5: 183–191
Last M, Friedman M, Kandel A (2003) The data mining approach to automated software testing. In: KDD ’03: Proceedings of the 9th ACM SIGKDD international conference on knowledge discovery and data mining. ACM, New York, pp 388–396
Lynch NA, Tuttle MR (1989) An introduction to input/output automata. CWI-Q 2(3): 219–246
Myers GJ, Sandler C (2004) The art of software testing. Wiley, New York
Nachmanson L, Veanes M, Schulte W, Tillmann N, Grieskamp W (2004) Optimal strategies for testing nondeterministic systems. SIGSOFT Softw Eng Notes 29(4): 55–64
Peled D, Vardi MY, Yannakakis M (2001) Black box checking. J Autom Lang Comb 7(2): 225–246
Petrenko A, Yevtushenko N, Huo J (2003) Testing transition systems with input and output testers. In: TestCom ’03, 2003. Lecture notes in computer science, vol 2644. Springer, Berlin, pp 129–145
Pnueli A (1977) The temporal logic of programs. In: SFCS ’77: Proceedings of the 18th annual symposium on foundations of computer science. IEEE Computer Society, USA, pp 46–57
Shannon CE (1948) A mathematical theory of communication. Bell Syst Tech J 27: 379–423, 623656
Tan L, Sokolsky O, Lee I (2004) Specification-based testing with linear temporal logic. In: IRI’04: proceedings of IEEE internation conference on information reuse and integration. IEEE Computer Society, USA, pp 483–498
Tretmans J (2008) Model based testing with labelled transition systems. In: Formal methods and testing, 2008. Lecture notes in computer science, vol 4949. Springer, Berlin, pp 1–38
Tretmans J, Brinksma E (2003) Torx: automated model-based testing. In: First European conference on model-driven software engineering. N/A, pp 31–43
van der Bijl M, Peureux F (2005) I/O-automata based testing. In: Model-based testing of reactive systems, Chapt. 7. Lecture notes in computer science, vol 3472, Springer, Berlin, pp 173–200
Weyuker EJ, Jeng B (1991) Analyzing partition testing strategies. IEEE Trans Softw Eng 17(7): 703–711
Xie G (2005) Fundamental studies on automatic verification of component-based systems—a decompositional and hybrid approach. PhD thesis, Washington State University
Xie G, Dang Z (2006) Testing systems of concurrent black-boxes—an automata-theoretic and decompositional approach. In: FATES’05: Proceedings of the 5th international workshop on formal approaches to software testing, 2006. Lecture notes in computer science, vol 3997. Springer, Berlin, pp 170–186
Yang L, Dang Z, Fischer TR (2009) Optimal software testing—a cooling down process. In: FCS’09: Proceedings of the international conference on foundations of computer science. CSREA Press, pp 162–168
Zhu H, Hall PAV (1992) Test data adequacy measurement. Softw Eng J 8(1): 21–29
Zhu H, Hall PAV, May JHR (1997) Software unit test coverage and adequacy. ACM Comput Surv 29(4): 366–427
Author information
Authors and Affiliations
Corresponding author
Additional information
Jim Woodcock
A 7-page abstract of this paper [YDF05] is in the conference proceedings of FCS’09.
Rights and permissions
About this article
Cite this article
Yang, L., Dang, Z. & Fischer, T.R. Information gain of black-box testing. Form Asp Comp 23, 513–539 (2011). https://doi.org/10.1007/s00165-011-0175-6
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-011-0175-6