ABSTRACT
This paper presents a novel formulation of definitions, uses, and def-use associations for objects in object-oriented programs by exploiting the relations that occur between classes and their instantiated objects due to aggregation. Contextual def-use associations are computed by generating a partial call sequence for each def and use based on object aggregation relations. By extending an escape points-to graph representation of the program, we have developed and implemented three strategies for achieving different levels of context for contextual def-use associations. Our experiments reveal that with all three strategies, multiple unique contextual def-use associations related to the same traditional (context-free) association are often generated. Contextual def-use associations are particularly useful for increasing test coverage and focusing the testing on critical method invocation sequences of object-oriented programs.
References
- 1.Roger Alexander and A. Jefferson Offutt. Analysis techniques for testing polymorphic relationships. In TOOLS USA, 1999. Google Scholar
Digital Library
- 2.Mei-Hwa Chen andHoward M. Kao. Testing object-oriented programs - an integrated approach. In International Symposium on Software Reliability Engineering, 1999. Google Scholar
Digital Library
- 3.Mary Jean Harrold and Mary Lou Soffa. Efficient computation of interprocedural definition-use chains. ACM Transactions on Programming Languages and Systems, 16(2):175-204, March 1994. Google Scholar
Digital Library
- 4.M.J. Harrold and G. Rothermel. Performing Data Flow Testing on Classes. In Proceedings of the Symposium on the Foundations of Software Engineering, 1994. Google Scholar
Digital Library
- 5.M. Rinard et. al. FLEX. www. ex-compiler.lcs.mit.edu, 2000.Google Scholar
- 6.John D. McGregor, Brian A. Malloy, and Rebecca L. Siegmund. A Comprehensible Program Representation of Object-Oriented Software. Annals of Software Engineering, 1996.Google Scholar
- 7.A. Orso. Integration Testing of Object-Oriented Software. PhD thesis, Politecnico Di Milano, 1999.Google Scholar
- 8.S. Rapps and E. Weyuker. Selecting Software Test Data Using Data Flow Information. IEEE Transactions on Software Engineering, 11(4):367-375, April 1985. Google Scholar
Digital Library
- 9.James Rumbaugh, Ivar Jacobson, and Grady Booch. The Unified Modeling Language Reference Manual. Addison-Wesley, 1999. Google Scholar
Digital Library
- 10.A. Souter and L. Pollock. OMEN: A Strategy for Testing Object-Oriented Software. In Proceedings of the International Symposium on Software Testing and Analysis, August 2000. Google Scholar
Digital Library
- 11.A. Souter, L. Pollock, and Dixie Hisley. Inter-class Def-Use Analysis with Partial Class Representations. In Proceedings of the ACM Workshop on Program Analysis For Software Tools and Engineering, September 1999. Google Scholar
Digital Library
- 12.J. Whaley and M. Rinard. Compositional Pointer and Escape Analysis for Java Programs. In Proceedings of OOPSLA, November 1999. Google Scholar
Digital Library
Index Terms
Contextual def-use associations for object aggregation





Comments