A holistic approach to model‐based testing of Web service compositions

The behavior of composed Web services depends on the results of the invoked services; unexpected behavior of one of the invoked services can threat the correct execution of an entire composition. This paper proposes an event‐based approach to black‐box testing of Web service compositions based on event sequence graphs, which are extended by facilities to deal not only with service behavior under regular circumstances (i.e., where cooperating services are working as expected) but also with their behavior in undesirable situations (i.e., where cooperating services are not working as expected). Furthermore, the approach can be used independently of artifacts (e.g., Business Process Execution Language) or type of composition (orchestration/choreography). A large case study, based on a commercial Web application, demonstrates the feasibility of the approach and analyzes its characteristics. Test generation and execution are supported by dedicated tools. Especially, the use of an enterprise service bus for test execution is noteworthy and differs from other approaches. The results of the case study encourage to suggest that the new approach has the power to detect faults systematically, performing properly even with complex and large compositions. Copyright © 2012 John Wiley & Sons, Ltd.

[1]  Marc-Thomas Schmidt,et al.  The Enterprise Service Bus: Making service-oriented architecture real , 2005, IBM Syst. J..

[2]  Wil M. P. van der Aalst,et al.  Formalization and verification of event-driven process chains , 1999, Inf. Softw. Technol..

[3]  Sebastian Wieczorek,et al.  Model-Driven Service Integration Testing - A Case Study , 2010, 2010 Seventh International Conference on the Quality of Information and Communications Technology.

[4]  Fevzi Belli,et al.  Event‐based modelling, analysis and testing of user interactions: approach and case study , 2006, Softw. Test. Verification Reliab..

[5]  Fevzi Belli,et al.  Event-driven modeling and testing of real-time web services , 2010, Service Oriented Computing and Applications.

[6]  A. Jefferson Offutt,et al.  Introduction to Software Testing , 2008 .

[7]  Lu Zhang,et al.  Generating Effective Test Sequences for BPEL Testing , 2009, 2009 Ninth International Conference on Quality Software.

[8]  Alexander Pretschner,et al.  One evaluation of model-based testing and its automation , 2005, ICSE.

[9]  Suhaimi Ibrahim,et al.  A comparative evaluation of state-of-the-art web service composition testing approaches , 2011, AST '11.

[10]  Luciano Baresi,et al.  An Introduction to Software Testing , 2006, FoVMT.

[11]  Fevzi Belli,et al.  Model-based testing of web service compositions , 2011, Proceedings of 2011 IEEE 6th International Symposium on Service Oriented System (SOSE).

[12]  Maya Daneva Approaching the ERP Project Cost Estimation Problem: an Experiment , 2007, ESEM 2007.

[13]  Fevzi Belli,et al.  Minimal Spanning Set for Coverage Testing of Interactive Systems , 2004, ICTAC.

[14]  Jun Zhu,et al.  Effective Message-Sequence Generation for Testing BPEL Programs , 2013, IEEE Transactions on Services Computing.

[15]  T. H. Tse,et al.  Data flow testing of service choreography , 2009, ESEC/FSE '09.

[16]  Francesca Lonetti,et al.  An automated approach to robustness testing of BPEL orchestrations , 2011, Proceedings of 2011 IEEE 6th International Symposium on Service Oriented System (SOSE).

[17]  Peter Norvig,et al.  Artificial intelligence - a modern approach, 2nd Edition , 2003, Prentice Hall series in artificial intelligence.

[18]  Ana R. Cavalli,et al.  WebMov: A Dedicated Framework for the Modelling and Testing of Web Services Composition , 2010, 2010 IEEE International Conference on Web Services.

[19]  Glenford J. Myers,et al.  Art of Software Testing , 1979 .

[20]  T. D. Fletcher,et al.  Web Services Choreography Description Language Version 1.0, W3C , 2004 .

[21]  Fevzi Belli,et al.  Finite state testing and analysis of graphical user interfaces , 2001, Proceedings 12th International Symposium on Software Reliability Engineering.

[22]  Fevzi Belli,et al.  Does "Depth" Really Matter? On the Role of Model Refinement for Testing and Reliability , 2011, 2011 IEEE 35th Annual Computer Software and Applications Conference.

[23]  Luciano Baresi,et al.  A Fault Taxonomy for Web Service Composition , 2009, ICSOC Workshops.

[24]  Wolfgang Grieskamp,et al.  Model‐based quality assurance of protocol documentation: tools and methodology , 2011, Softw. Test. Verification Reliab..

[25]  Richard H. Carver,et al.  Reachability testing of concurrent programs , 2006, IEEE Transactions on Software Engineering.

[26]  Lionel C. Briand,et al.  Assessing, Comparing, and Combining Statechart- based testing and Structural testing: An Experiment , 2007, First International Symposium on Empirical Software Engineering and Measurement (ESEM 2007).

[27]  Myra B. Cohen,et al.  GUI Interaction Testing: Incorporating Event Context , 2011, IEEE Transactions on Software Engineering.

[28]  Hong Zhu,et al.  Software unit test coverage and adequacy , 1997, ACM Comput. Surv..

[29]  Fatiha Zaïdi,et al.  A Formal Framework for Service Orchestration Testing Based on Symbolic Transition Systems , 2009, TestCom/FATES.

[30]  Rudolf Schmid,et al.  Organization for the advancement of structured information standards , 2002 .

[31]  Fevzi Belli,et al.  Testen Web-basierter Systeme mittels strukturierter, graphischer Modelle - Vergleich anhand einer Fallstudie , 2006, GI Jahrestagung.

[32]  Ina Schieferdecker,et al.  Applying Model Checking to Generate Model-Based Integration Tests from Choreography Models , 2009, TestCom/FATES.

[33]  Gerardo Canfora,et al.  Service-Oriented Architectures Testing: A Survey , 2009, ISSSE.

[34]  Mohamed Adel Serhani,et al.  Towards the Testing of Composed Web Services in 3rd Generation Networks , 2006, TestCom.

[35]  Nicolai M. Josuttis,et al.  Soa In Practice The Art Of Distributed System Design , 2007 .

[36]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[37]  M. Harman,et al.  Testing Web Services : A Survey , 2011 .

[38]  Fevzi Belli,et al.  Are Longer Test Sequences Always Better? - A Reliability Theoretical Analysis , 2010, 2010 Fourth International Conference on Secure Software Integration and Reliability Improvement Companion.

[39]  Mike P. Papazoglou,et al.  Service oriented architectures: approaches, technologies and research issues , 2007, The VLDB Journal.