Automatically testing interacting software components
Proceedings of the 2006 international workshop on Automation of software test
The class-level mutants of MuJava
Proceedings of the 2006 international workshop on Automation of software test
A state-based approach to integration testing based on UML models
Information and Software Technology
Integrated object-oriented framework-based testing environment
ACS'08 Proceedings of the 8th conference on Applied computer scince
Applying Model Checking to Generate Model-Based Integration Tests from Choreography Models
TESTCOM '09/FATES '09 Proceedings of the 21st IFIP WG 6.1 International Conference on Testing of Software and Communication Systems and 9th International FATES Workshop
Nature-inspired techniques for conformance testing of object-oriented software
Applied Soft Computing
Symbolic Message Sequence Charts
ACM Transactions on Software Engineering and Methodology (TOSEM)
Testing aspect-oriented programs with finite state machines
Software Testing, Verification & Reliability
Combining UML sequence and state machine diagrams for data-flow based integration testing
ECMFA'12 Proceedings of the 8th European conference on Modelling Foundations and Applications
Hi-index | 0.00 |
In object-oriented terms, one of the goals of integration testing is to ensure that messages from objects in one class or component are sent and received in the proper order and have the intended effect on the state of the objects that receive the messages. This research extends an existing single-class testing technique to integration testing of multiple classes. The single-class technique models the behaviour of a single class as a finite state machine, transforms the representation into a data flow graph that explicitly identifies the definitions and uses of each state variable of the class, and then applies conventional data flow testing to produce test case specifications that can be used to test the class. This paper extends those ideas to inter-class testing by developing flow graphs, finding paths between pairs of definitions and uses, detecting some infeasible paths and automatically generating tests for an arbitrary number of classes and components. It introduces flexible representations for message sending and receiving among objects and allows concurrency among any or all classes and components. Data flow graphs are stored in a relational database and database queries are used to gather def-use information. This approach is conceptually simple, mathematically precise, quite powerful and general enough to be used for traditional data flow analysis. This testing approach relies on finite state machines, database modelling and processing techniques and algorithms for analysis and traversal of directed graphs. The paper presents empirical results of the approach applied to an automotive system. This work was prepared by U.S. Government employees as part of their official duties and is, therefore, a work of the U.S. Government and not subject to copyright. Published in 2006 by John Wiley & Sons, Ltd.This article is a U.S. Government work and is in the public domain in the U.S.A.