Abstract
UML interaction diagrams are used during integration testing. However, this will typically not find all integration faults as some incorrect behaviors are only exhibited in certain states of the collaborating classes during interactions. State machine diagrams are typically used to model the behavior of state-dependent objects. This paper presents a technique to enhance interaction testing by accounting for state-based behavior as well as data-flow information. UML sequence and state machine diagrams are combined into a control-flow graph to then generate integration test cases, adapting well-known coupling-based, data-flow testing criteria. In order to assess our technique, we developed a prototype tool and applied it on a small case study. The results suggest that the proposed technique is more cost-effective than the most closely related approach reported in the literature, which only relies on control flow analysis.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Pender, T.: UML Bible. Wiley (2003)
Abdurazik, A., Offutt, J.: Using UML Collaboration Diagrams for Static Checking and Test Generation. In: Evans, A., Caskurlu, B., Selic, B. (eds.) UML 2000. LNCS, vol. 1939, pp. 383–395. Springer, Heidelberg (2000)
Ali, S., Briand, L.C., Rehman, M.J., Asghar, H., Zafar, Z., Nadeem, A.: A State-based Approach to Integration Testing based on UML Models. IST 49(11-12), 1087–1106 (2007)
Briand, L.C., Labiche, Y., Lin, Q.: Improving the Coverage Criteria of UML State Machines Using Data Flow Analysis. STVR 20(3), 177–207 (2010)
Gallagher, L., Offutt, A.J., Cincotta, A.: Integration testing of object-oriented components using finite state machines. STVR 16(4), 215–266 (2006)
Pelliccione, P., Muccini, H., Bucchiarone, A., Facchini, F.: TeStor: Deriving Test Sequences from Model-based Specifications. In: ACM CBSE, pp. 267–282 (2005)
Bandyopadhyay, A., Ghosh, S.: Test input generation using UML sequence and state machines models. In: IEEE ICST, pp. 121–130 (2009)
Kansomkeat, S., Offutt, J., Abdurazik, A., Baldini, A.: A comparative evaluation of tests generated from different UML diagrams. In: ACIS SNPD, pp. 867–872 (2008)
Wu, Y., Chen, M.-H., Offutt, A.J.: UML-Based Integration Testing for Component-Based Software. In: Erdogmus, H., Weng, T. (eds.) ICCBSS 2003. LNCS, vol. 2580, pp. 251–260. Springer, Heidelberg (2003)
Mokhati, F., Badri, M., Badri, L., Hamidane, F., Bouazdia, S.: “Automated testing sequences generation from AUML diagrams: a formal verification of agents’ interaction protocols”. IJAOSE 2(4), 422–448 (2008)
Pickin, S., Jard, C., Jeron, T., Jezequel, J.-M., Le Traon, Y.: Test synthesis from UML models of distributed software. IEEE TSE 33(4), 252–268 (2007)
Sarma, M., Mall, R.: Automatic generation of test specifications for coverage of system state transitions. IST 51(2), 418–432 (2009)
Wu, C.-S., Chang, W.-C., Kim, S., Huang, C.-H.: Generating State-based Polymorphic Interaction Graph from UML Diagrams for Object Oriented Testing. In: IAENG IMECS, pp. 726–731 (2011)
Barisas, D., Bareiša, E.: A Software Testing Approach Based on Behavioral UML Models. ITC 38(2), 119–124 (2009)
Swain, S.K., Mohapatra, D.P., Mall, R.: Test Case Generation Based on State and Activity Models. JOT 9(5), 1–27 (2010)
Sokenou, D.: Generating Test Sequences from UML Sequence Diagrams and State Diagrams. In: GI Jahrestagung, pp. 236–240 (2006)
Garousi, V., Briand, L.C., Labiche, Y.: Control Flow Analysis of UML 2.0 Sequence Diagrams. In: ECMFA, pp. 160–174 (2005)
Ledru, Y., du Bousquet, L., Bontron, P., Maury, O., Oriat, C., Potet, M.-L.: Test Purposes: Adapting the Notion of Specification to Testing. In: IEEE ASE, pp. 127–134 (2001)
Li, L., Zhongsheng, Q., He, T.: Test purpose-based test generation for Web applications. In: IEEE NDT, pp. 238–243 (2009)
En-Nouaary, A., Liu, G.: Timed test cases generation based on test purposes expressed as message sequence charts. In: IEEE ICTTA, pp. 585–586 (2004)
Zeng, Y., Chen, L.-P., Chai, Y.-X., Zhou, X.: UML-based approach to generate polymorphic testing sequence and its implementation. In: WRI WCSE, pp. 251–255 (2009)
Hartmann, J., Imoberdorf, C., Meisinger, M.: UML-Based Integration Testing. In: ACM ISSTA, pp. 60–70 (2000)
OMG, UML 2.0 Superstructure Specification, Object Management Group, Final Adopted Specification ptc/03-08-02 (2003)
Liu, Y.: Combining UML 2.0 sequence and state machine diagrams for control- and data-flow based integration testing, M.A.Sc. thesis, Carleton University (2009)
Jin, Z., Offutt, A.J.: Coupling-based Criteria for Integration Testing. STVR 8(3), 133–154 (1998)
Briand, L.C., Labiche, Y., Wang, Y.: A comprehensive and systematic methodology for client-server class integration testing. In: IEEE ISSRE, pp. 14–25 (2003)
Ali, S., Iqbal, M.Z., Arcuri, A., Briand, L.C.: A Search-based OCL Constraint Solver for Model-based Test Data Generation. In: IEEE QSIC (2011)
Andrews, J.H., Briand, L.C., Labiche, Y., Namin, A.S.: Using Mutation Analysis for Assessing and Comparing Testing Coverage Criteria. IEEE TSE 32(8), 608–624 (2006)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Briand, L., Labiche, Y., Liu, Y. (2012). Combining UML Sequence and State Machine Diagrams for Data-Flow Based Integration Testing. In: Vallecillo, A., Tolvanen, JP., Kindler, E., Störrle, H., Kolovos, D. (eds) Modelling Foundations and Applications. ECMFA 2012. Lecture Notes in Computer Science, vol 7349. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-31491-9_8
Download citation
DOI: https://doi.org/10.1007/978-3-642-31491-9_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-31490-2
Online ISBN: 978-3-642-31491-9
eBook Packages: Computer ScienceComputer Science (R0)