Effective Message-Sequence Generation for Testing BPEL Programs

With the popularity of Web Services and Service-Oriented Architecture (SOA), quality assurance of SOA applications, such as testing, has become a research focus. Programs implemented by the Business Process Execution Language for Web Services (WS-BPEL), which can be used to compose partner Web Services into composite Web Services, are one popular kind of SOA applications. The unique features of WS-BPEL programs bring new challenges into testing. A test case for testing a WS-BPEL program is a sequence of messages that can be received by the WS-BPEL program under test. Previous research has not studied the challenges of message-sequence generation induced by unique features of WS-BPEL as a new language. In this paper, we present a novel methodology to generate effective message sequences for testing WS-BPEL programs. To capture the order relationship in a message sequence and the constraints on correlated messages imposed by WS-BPEL's routing mechanism, we model the WS-BPEL program under test as a message-sequence graph (MSG), and generate message sequences based on MSG. We performed experiments for our method and two other techniques with six WS-BPEL programs. The results show that the message sequences generated by using our method can effectively expose faults in the WS-BPEL programs.

[1]  John D. McGregor,et al.  Incremental Testing Of Object-Oriented Class Structures/spl dagger/ , 1992, International Conference on Software Engineering.

[2]  John D. McGregor,et al.  Incremental testing of object-oriented class structures , 1992, ICSE '92.

[3]  Glynn Winskel,et al.  The formal semantics of programming languages - an introduction , 1993, Foundation of computing series.

[4]  Phyllis G. Frankl,et al.  The ASTOOT approach to testing object-oriented programs , 1994, TSEM.

[5]  A. S. M. Sajeev,et al.  A Framework for Testing Object-Oriented Software Using Formal Specifications , 1996, Ada-Europe.

[6]  Tsong Yueh Chen,et al.  In black and white: an integrated approach to class-level testing of object-oriented programs , 1998, TSEM.

[7]  A. Jefferson Offutt,et al.  Generating Tests from UML Specifications , 1999, UML.

[8]  Jean Hartmann,et al.  UML-Based integration testing , 2000, ISSTA '00.

[9]  Li Xuandong,et al.  Generating test cases from UML activity diagram based on Gray-box method , 2004 .

[10]  D. Notkin,et al.  Rostra: a framework for detecting redundant object-oriented unit tests , 2004, Proceedings. 19th International Conference on Automated Software Engineering, 2004..

[11]  Guoliang Zheng,et al.  Generating test cases from UML activity diagram based on Gray-box method , 2004, 11th Asia-Pacific Software Engineering Conference.

[12]  Xiang Fu,et al.  Analysis of interacting BPEL web services , 2004, WWW '04.

[13]  Juan Luo,et al.  Testing Web services by XML perturbation , 2005, 16th IEEE International Symposium on Software Reliability Engineering (ISSRE'05).

[14]  Wei Sun,et al.  BPEL4WS unit testing: framework and implementation , 2005, IEEE International Conference on Web Services (ICWS'05).

[15]  Wei Sun,et al.  A Graph-Search Based Approach to BPEL4WS Test Generation , 2006, 2006 International Conference on Software Engineering Advances (ICSEA'06).

[16]  Wei Sun,et al.  BPEL4WS Unit Testing: Test Case Generation Using a Concurrent Path Analysis Approach , 2006, 2006 17th International Symposium on Software Reliability Engineering.

[17]  Philip Mayer,et al.  Towards a BPEL unit testing framework , 2006, TAV-WEB '06.

[18]  Hang Yu,et al.  Testing BPEL-based Web Service Composition Using High-level Petri Nets , 2006, 2006 10th IEEE International Enterprise Distributed Object Computing Conference (EDOC'06).

[19]  Malcolm Munro,et al.  An Approach for Specification-based Test Case Generation for Web Services , 2007, 2007 IEEE/ACS International Conference on Computer Systems and Applications.

[20]  Atif M. Memon,et al.  An event‐flow model of GUI‐based applications for testing , 2007, Softw. Test. Verification Reliab..

[21]  Andrea Polini,et al.  A QoS Test-Bed Generator for Web Services , 2007, ICWE.

[22]  Bertrand Meyer,et al.  Experimental assessment of random testing for object-oriented software , 2007, ISSTA '07.

[23]  A.T. Endo,et al.  Web Services Composition Testing: A Strategy Based on Structural Testing of Parallel Programs , 2008, Testing: Academic & Industrial Conference - Practice and Research Techniques (taic part 2008).

[24]  T. H. Tse,et al.  Data flow testing of service-oriented workflow applications , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

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

[26]  Raquel Blanco,et al.  A First Approach to Test Case Generation for BPEL Compositions of Web Services Using Scatter Search , 2009, 2009 International Conference on Software Testing, Verification, and Validation Workshops.

[27]  T. H. Tse,et al.  Test case prioritization for regression testing of service-oriented business applications , 2009, WWW '09.

[28]  T. H. Tse,et al.  XML-manipulating test case prioritization for XML-manipulating services , 2011, J. Syst. Softw..