Skip to main content
U.S. flag

An official website of the United States government

Official websites use .gov
A .gov website belongs to an official government organization in the United States.

Secure .gov websites use HTTPS
A lock ( ) or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

Automatically Testing Interacting Software Components



Leonard J. Gallagher, Jeff Offutt


One goal of integration testing for object-oriented software is to ensure high object interoperability. Sent messages should have the intended effects on the states and subsequent actions of the receiving objects. This is especially difficult when software is comprised of components developed by different vendors, with different languages, and the implementation sources are not all available. A previous paper presented a model of inter-operating OO classes based on finite state machines. It addresses methods for identifying the relevant actions of a test component to be integrated into the system, transforms the finite state specification into a control and data flow graph, labels the graph with all defs and uses of class variables, and presents an algorithm to generate test specifications as specific paths through the directed graph. It also presents empirical results from an automatic tool that was built to support this test method. This paper presents additional details about the tool itself, including how several difficult problems were solved, and adds new capabilities to help automate the transformation of test specifications into executable test cases. The result is a fresh approach to automated testing. It follows accepted theoretical procedures while operating directly on an object-oriented software specification. This yields a data flow graph and executable test cases that adequately cover the graph according to classical graph coverage criteria. The tool supports specification-based testing and helps to bridge the gap between theory and practice.
Conference Location
Conference Title
International Conference on Software Engineering (ICSE?06) Workshop on Automation of Software Testing (AST?06)


data flow, integration testing, inter-operability, object-oriented software, specification-based, testing tools


Gallagher, L. and Offutt, J. (2006), Automatically Testing Interacting Software Components, International Conference on Software Engineering (ICSE?06) Workshop on Automation of Software Testing (AST?06), , USA, [online], (Accessed June 25, 2024)


If you have any questions about this publication or are having problems accessing it, please contact

Created April 30, 2006, Updated October 12, 2021