Programs developed with object technologies have unique features that often make traditional testing methods inadequate. Consider, for instance, the dependence between the state of an object and the behavior of that object: The outcome of a method executed by an object often depends on the state of the object when the method is invoked. It is therefore crucial that techniques for testing of classes exercise class methods when the method's receiver is in different states. The state of an object at any given time depends on the sequence of messages received by the object up to that time. Thus, methods for testing object-oriented software should identify sequences of method invocations that are likely to uncover potential defects in the code under test. However, testing methods for traditional software do not provide this kind of information. In this paper, we use data flow analysis, symbolic execution, and automated deduction to produce sequences of method invocations exercising a class under test. Since the static analysis techniques that we use are applied to different subproblems, the method proposed in this paper can automatically generate information relevant to testing even when symbolic execution and automated deduction cannot be completed successfully.

Buy, U., Orso, A., Pezze', M. (2000). Automated testing of classes. In ACM International Symposium on Software Testing and Analysis (ISSTA'2000), Agosto 2000 (pp.39-48). Association for Computing Machinery (ACM) [10.1145/347324.348870].

Automated testing of classes

PEZZE', MAURO
2000

Abstract

Programs developed with object technologies have unique features that often make traditional testing methods inadequate. Consider, for instance, the dependence between the state of an object and the behavior of that object: The outcome of a method executed by an object often depends on the state of the object when the method is invoked. It is therefore crucial that techniques for testing of classes exercise class methods when the method's receiver is in different states. The state of an object at any given time depends on the sequence of messages received by the object up to that time. Thus, methods for testing object-oriented software should identify sequences of method invocations that are likely to uncover potential defects in the code under test. However, testing methods for traditional software do not provide this kind of information. In this paper, we use data flow analysis, symbolic execution, and automated deduction to produce sequences of method invocations exercising a class under test. Since the static analysis techniques that we use are applied to different subproblems, the method proposed in this paper can automatically generate information relevant to testing even when symbolic execution and automated deduction cannot be completed successfully.
paper
Class Testing; Data Flow Analysis; Symbolic Execution; Testing and Analysis; Testing Object-Oriented Software;
automated, testing, classes
English
ISSTA 00 Proceedings of the ACM SIGSOFT 2000 International Symposium on Software Testing and Analysis
2000
ACM International Symposium on Software Testing and Analysis (ISSTA'2000), Agosto 2000
9781581132663
2000
39
48
none
Buy, U., Orso, A., Pezze', M. (2000). Automated testing of classes. In ACM International Symposium on Software Testing and Analysis (ISSTA'2000), Agosto 2000 (pp.39-48). Association for Computing Machinery (ACM) [10.1145/347324.348870].
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10281/43977
Citazioni
  • Scopus 54
  • ???jsp.display-item.citation.isi??? ND
Social impact