The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.01 - First Quarter (2013 vol.6)
pp: 7-19
Yitao Ni , Key Lab. of High Confidence Software Technol., Peking Univ., Beijing, China
Shan-Shan Hou , Key Lab. of High Confidence Software Technol., Peking Univ., Beijing, China
Lu Zhang , Key Lab. of High Confidence Software Technol., Peking Univ., Beijing, China
Jun Zhu , Key Lab. of High Confidence Software Technol., Peking Univ., Beijing, China
Zhong Jie Li , Service Building Technol., IBM China Res. Lab., Beijing, China
Qian Lan , Key Lab. of High Confidence Software Technol., Peking Univ., Beijing, China
Hong Mei , Key Lab. of High Confidence Software Technol., Peking Univ., Beijing, China
Jia-Su Sun , Key Lab. of High Confidence Software Technol., Peking Univ., Beijing, China
ABSTRACT
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.
INDEX TERMS
Web services, Software quality, Game theory, Specification languages, Service-oriented architecture, WS-BPEL modeling, WS-BPEL testing, message-sequence graph, web services
CITATION
Yitao Ni, Shan-Shan Hou, Lu Zhang, Jun Zhu, Zhong Jie Li, Qian Lan, Hong Mei, Jia-Su Sun, "Effective Message-Sequence Generation for Testing BPEL Programs", IEEE Transactions on Services Computing, vol.6, no. 1, pp. 7-19, First Quarter 2013, doi:10.1109/TSC.2011.22
REFERENCES
[1] A. Bertolino, G.D. Angelis, and A. Polini, "A QoS Test-Bed Generator for Web Services," Proc. Int'l Conf. Web Eng., pp. 17-31, 2007.
[2] H.Y. Chen, T.H. Tse, F.T. Chan, and T.Y. Chen, "In Black and White: An Integrated Approach to Class-Level Testing of Object-Oriented Programs," ACM Trans. Software Eng. and Methodology, vol. 7, no. 3, pp. 250-295, 1998.
[3] I. Ciupa, A. Leitner, M. Oriol, and B. Meyer, "Experimental Assessment of Random Testing for Object-Oriented Software," Proc. Int'l Symp. Software Testing and Analysis, pp. 84-94, 2007.
[4] W.L. Dong, H. Yu, and Y.B. Zhang, "Testing BPEL-Based Web Service Composition Using High-Level Petri Nets," Proc. Int'l Conf. Enterprise Distributed Object Computing, pp. 441-444, 2006.
[5] R. Doong and P. Frankl, "The ASTOOT Approach to Testing Object-Oriented Programs," ACM Trans. Software Eng. and Methodology, vol. 3, no. 2, pp. 101-130, 1994.
[6] S. Fiedler, "Object-Oriented Unit Testing," Hewlett-Packard J., vol. 40, no. 2, pp. 69-74, 1989.
[7] R. Fletcher and A. Sajeev, "A Framework for Testing Object Oriented Software Using Formal Specifications," Proc. Int'l Conf. Reliable Software Technologies, pp. 159-170, 1996.
[8] X. Fu, T. Bultan, and J. Su, "Analysis of Interacting BPEL Web Services," Proc. Int'l Conf. World Wide Web, pp. 621-630, 2004.
[9] S. Hanna and M. Munro, "An Approach for Specification-Based Test Case Generation for Web Services," Proc. Int'l Conf. Computer Systems and Applications, pp. 16-23, 2007.
[10] M. Harrold and J. Mcgregor, "Incremental Testing of Object-Oriented Class Structures," Proc. Int'l Conf. Software Eng., pp. 68-80, 1992.
[11] J. Hartmann, C. Imoberdorf, and M. Meisinger, "UML-Based Integration Testing," Proc. Int'l Symp. Software Testing and Analysis, pp. 60-70, 2000.
[12] Z. Li, W. Sun, Z.B. Jiang, and X. Zhang, "BPEL4WS Unit Testing: Framework and Implementation," Proc. Int'l Conf. Web Services, pp. 103-110, 2005.
[13] P. Mayer and D. Lubke, "Towards a BPEL Unit Testing Framework," Proc. Int'l Workshop Testing, Analysis, and Verification of Web Services and Applications, pp. 33-42, 2006.
[14] L. Mei, W. Chan, and T. Tse, "Data Flow Testing of Service-Oriented Workflow Applications," Proc. Int'l Conf. Software Eng., pp. 371-380, 2008.
[15] L. Mei, W. Chan, and T. Tse, "Test Case Prioritization in Regression Testing of Service-Oriented Business Applications," Proc. Int'l Conf. World Wide Web, pp. 901-910, 2009.
[16] L. Mei, W.K. Chan, T. Tse, and R. Merkel, "XML-Manipulating Test Case Prioritization for XML-Manipulating Services," J. Systems and Software, vol. 84, no. 4, pp. 603-619, 2011.
[17] A.T. Endo, A.S. Simao, S.R.S. Souza, and P.S.L. Souza, "Web Services Composition Testing: A Strategy Based on Structural Testing of Parallel Programs," Proc. Testing: Academic and Industrial Conf.-Practice and Research Techniques, pp. 3-12, 2008.
[18] R. Blanco, J. Garcia-Fanjuland, and J. Tuya, "A First Approach to Test Case Generation for BPEL Compositions of Web Services Using Scatter Search," Proc. Int'l Conf. Software Testing, Verification, and Validation Workshops, pp. 131-140, 2009.
[19] A.M. Memon, "An Event-Flow Model of GUI-Based Applications for Testing," Software Testing, Verification and Reliability, vol. 17, no. 3, pp. 137-157, 2007.
[20] J. Offutt and A. Abdurazik, "Generating Tests from UML Specifications," Proc. Int'l Conf. Unified Modeling Language, pp. 416-429, 1999.
[21] Parasoft Jtest, http://www.parasoft.com/jsp/productsjtest. jsp?itemId=14 , 2013.
[22] L. Wang, J. Yuan, X. Yu, J. Hu, X. Li, and G. Zheng, "Generating Test Cases from UML Activity Diagram Based on Gray-Box Method," Proc. Asia-Pacific Software Eng. Conf., pp. 284-291, 2004.
[23] T. Xie, D. Marinov, and D. Notkin, "Rostra: A Framework for Detecting Redundant Object-Oriented Unit Tests," Proc. Int'l Conf. Automated Software Eng., pp. 196-205, 2004.
[24] W. Xu, J. Offut, and J. Luo, "Testing Web Services by XML Perturbation," Proc. Int'l Symp. Software Reliability Eng., pp. 257-266, 2005.
[25] J. Yan, Z. Li, Y. Yuan, W. Sun, and J. Zhang, "BPEL4WS Unit Testing: Test Case Generation Using a Concurrent Path Analysis Approach," Proc. Int'l Symp. Software Reliability Eng., pp. 75-84, 2006.
[26] Y. Yuan, Z. Li, and W. Sun, "A Graph-Search Based Approach to BPEL4WS Test Generation," Proc. Int'l Conf. Software Eng. Advances, pp. 14-22, 2006.
[27] S.S. Hou, L. Zhang, Q. Lan, H.J. Mei, and S. Sun, "Generating Effective Test Sequences for BPEL Testing," Proc. Fifth Int'l Conf. Quality Software, pp. 331-340, 2009.
[28] G. Winskel, The Formal Semantics of Programming Langguage: An Introduction. MIT, p. 6, 1993.
23 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool