Business Process Regression Testing

  • Hehui Liu
  • Zhongjie Li
  • Jun Zhu
  • Huafang Tan
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4749)


Business Process Execution Language(BPEL) has been recognized as a standard for the service orchestration in Service Oriented Architecture(SOA). Due to the pivotal role played by BPEL in service composition, the reliability of a business process becomes critical for a SOA system, especially during its evolution.

Regression testing is well known as an effective technology to ensure the quality of modified programs. To reduce the cost of regression testing, a subset of test cases is selected to (re)run, known as regression test selection. Previous work addressing this problem will fail in the presence of concurrent control flow, which is an important and widely used feature of BPEL in describing service orchestration. In this paper, a regression testing approach for BPEL business processes is presented. In this approach, an impact analysis rule is proposed to identify the test paths affected by the change of BPEL concurrent control structures. Based on the impact analysis result and process changes identification, the impacted test paths are classified into reusable, modified, obsolete and new-structural paths. Experiments show that our approach is feasible.


  1. 1.
    Benedusi, P., Cimitile, A., Carlini, U.D.: Post-maintenance testing based on path change analysis. In: ICSM 1988. Proceedings of the Conference on Software Maintenance, Scottsdale, AZ, USA, pp. 352–361 (October 1988)Google Scholar
  2. 2.
    Chen, L., Wassermann, B., Emmerich, W., Foster, H.: Web service orchestration with bpel. In: ICSE’06. Proceeding of the 28th International Conference on Software Engineering, Shanghai, China, pp. 1071–1072 (May 2006)Google Scholar
  3. 3.
    Vokolos, F.I., Frankl, P.G.: Pythia: A regression test selection tool based on textual differencing. In: ENCRESS 1997. Porceedings of the 3th International Conference on Reliability, Quality, and Safety of Software Intensive Systems, Athens, Greece, pp. 3–21 (May 1997)Google Scholar
  4. 4.
    Harrold, M.J., Jones, J.A., Li, T., Liang, D.: Regression test selection for java software. In: OOPSLA 2001. Proceedings of the ACM Conference on OO Programming, Systems, Languages, and Applications, Tampa Bay, FL, USA, pp. 312–326. ACM Press, New York (2001)CrossRefGoogle Scholar
  5. 5.
    Li, Y., Wahl, N.J.: An overview of regression testing. ACM SIGSOFT Software Engineering Notes 24(1), 69–73 (1999)CrossRefGoogle Scholar
  6. 6.
    Li, Z., Sun, W.: Bpel-unit: Junit for bpel processes. In: Dan, A., Lamersdorf, W. (eds.) ICSOC 2006. LNCS, vol. 4294, pp. 415–426. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  7. 7.
    Rothermel, G., Harrold, M.J.: A safe, efficient regression test selection technique. ACM Transactions on Software Engineering and Methodology 6(2), 173–210 (1997)CrossRefGoogle Scholar
  8. 8.
    Yuan, Y., Li, Z., Sun, W.: A graph-search based approach to bpel4ws test generation. In: ICSEA 2006. Proceedings of the International Conference on Software Engineering Advances, Papeete, Tahiti, French Polynesia, p. 14 (October 2006)Google Scholar
  9. 9.
    Zhao, J., Xie, T., Li, N.: Towards regression test selection for aspectj programs. In: WTAOP 2006. Proceedings of the 2nd workshop on Testing Aspect-Oriented Programs, Portland, Maine, pp. 21–26 (July 2006)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Hehui Liu
    • 1
  • Zhongjie Li
    • 1
  • Jun Zhu
    • 1
  • Huafang Tan
    • 1
  1. 1.IBM China Research Laboratory, Beijing 100094China

Personalised recommendations