Abstract
MM path is integration artifact of object-oriented systems and is characterized by interleaved sequence of messages and method execution paths. In the context of UML sequence diagrams, an MM path is usually found common in many message paths and concatenation of one MM path with different MM paths results in distinct message paths. Adequate testing of all message paths in UML sequence diagrams implies the coverage of all possible concatenation of constituent MM paths in different object-states, which may not be fully achieved in practical situations. With limited test effort, practitioners are compelled to consider a subset of all message paths in ad-hoc manner or priority basis. It can be possible that the selected paths may not include at least one instance of highly critical MM path, whereas less critical MM paths may have been included with multiple instances. It is, therefore, necessary that the selected message paths would contain one instance of all MM paths and their additional instances as per their priorities. To address this problem, we propose two coverage criteria: all MM paths and prioritized MM paths and an MM path-based coverage model. To obtain such coverage model, we build a graph model called as sequence integration graph from the sequence diagram and thereafter, synthesize MM paths to merge them into a set of connected trees. Further, we capture priority information of the MM paths by means of edge weights and order of concatenation among the MM paths by means of connector edges between the trees. These information captured in the MM coverage model helps to determine effective coverage of the MM paths. Our experimental results substantiate usefulness of our MM path-based coverage model for selecting message paths to satisfy all MM paths and prioritized MM paths coverage criteria in the context of integration testing of object-oriented systems with the limited testing effort.
Similar content being viewed by others
References
Ali S, Briand LC, Rehman MJ, Asghar H, Iqbal MZZ, Nadeem A (2007) A state-based approach to integration testing based on UML models. Inf Softw Technol 49(11–12):1087–1106
Andrews A, France R, Ghosh S, Craig G (2003) Test adequacy criteria for UML design models. J Softw Test Verif Reliab 13(2):95–127
Bandyopadhyay A, Ghosh S (2009) Test input generation using UML sequence and state machines models. In: Proceedings of international conference on software testing verification and validation, pp 121–130
Basanieri F, Bertolino A (2000) A practical approach to UML-based derivation of integration tests. In: International software quality week Europe
Booch G, Rumbaugh J, Jacobson I (2002) Object-oriented analysis and design. Addison wesley, Boston
Briand L, Labiche Y, Liu Y (2012) Combining UML sequence and state machine diagrams for data-flow based integration testing. In: European conference on modelling foundations and applications. Springer-verlag, pp 74–89
Briand LC, Labiche Y (2002) A UML-based approach to system testing. Softw Syst Model (Springer) 1(1):10–42
Cormen TH, Leiserson CE, Rivest RL, Stein C (2001) Introduction to algorithms. The MIT Press, Cambridge, England McGraw-Hill Book Company
D-T TT, GhoshS, France RB (2006) A systematic approach to generate inputs to test UML design models. In: Proceedings of the 17th International symposium on software reliability engineering. IEEE Computer Society, Washington, DC, pp 95–104
Fraikin F, Leonhardt T (2002) SeDiTeC—testing based on sequence diagrams. In: IEEE International conference on automated software engineering (ASE02), pp 261– 266
Garousi V, Briand LC, Labiche Y (2005) Control flow analysis of UML 2.0 sequence diagrams. Lect Notes Comput Sci 3748(1):160–174
Hartmann J, Imoberdorf C, Meisinger M (2000) UML-based integration testing. In: Proceedings of the ACM SIGSOFT international symposium on software testing and analysis. ACM, pp 60–70
(2010) http://www.magicdraw.com/
Jorgensen PC (2008) Software testing: a Craftsman’s approach, 3rd edn. CRC Press, Boca Raton
Kundu D, Samanta D, Mall R (2012) An approach to convert XMI representation of UML 2.x interaction diagram into control flow graph. ISRN Softw Eng. doi:10.5402/2012/265235
Kundu D, Samanta D, Mall R (2013) Automatic code generation from unified modelling language sequence diagrams. IET Softw 7(1):12–28
Kundu D, Sarma M, Samanta D, Mall R (2009) System testing for object-oriented systems with test case prioritization. Softw Test Verif Reliab 19(4):297–333
Nayak A, Samanta D (2009) Model-based test cases synthesis using UML interaction diagrams. ACM SIGSOFT Softw Eng Notes 34(2):1–10
Pilskalns O, Andrews A, Ghosh S, France R (2003) Rigorous testing by merging structural and behavioral UML representations. In: International conference on the unified modeling language, pp 234–248
Rountev A, Kagan S, Sawin J (2005) Coverage criteria for testing of object interactions in sequence diagrams. In: International conference on fundamental approaches to software engineering (FASE’05), pp 289–304
Sarma M, Kundu D, Mall R (2007) Automatic test case generation from UML sequence diagram. In: Proceedings of the 15th international conference on advanced computing and communications (ADCOM, 2007). IEEE Computer Society, Washington, DC, pp 60–67
Laboratory for Computer Science M (2013) http://alloy.mit.edu/alloy/
Zhao R, Lin L (2007) An UML statechart diagram-based MM-path generation approach for object-oriented integration testing. Int J Appl Math Comput Scie 3(1):22–27
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Kundu, D., Samanta, D. Enumerating message paths for interaction testing of object-oriented systems. Innovations Syst Softw Eng 12, 279–301 (2016). https://doi.org/10.1007/s11334-015-0264-4
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11334-015-0264-4