ISSN 1000-1239 CN 11-1777/TP

计算机研究与发展 ›› 2019, Vol. 56 ›› Issue (4): 895-905.doi: 10.7544/issn1000-1239.2019.20180037

• 软件技术 • 上一篇    

面向WS-BPEL程序的变异测试优化技术

孙昌爱1,2,王真1,潘琳1   

  1. 1(北京科技大学计算机与通信工程学院 北京 100083); 2(宇航智能控制技术重点实验室 北京 100854) (casun@ustb.edu.cn)
  • 出版日期: 2019-04-01
  • 基金资助: 
    国家自然科学基金项目(61520106005,61761136014);国家重点研发计划项目(2017YFB1010000)

Optimized Mutation Testing Techniques for WS-BPEL Programs

Sun Chang’ai1,2, Wang Zhen1, Pan Lin1   

  1. 1(School of Computer and Communication Engineering, University of Science and Technology Beijing, Beijing 100083); 2(Science and Technology on Aerospace Intelligent Control Laboratory, Beijing 100854)
  • Online: 2019-04-01

摘要: WS-BPEL(business process execution language for Web service)是一种基于XML的、面向过程的可执行服务组装语言.由于Web服务的动态性、松耦合特性、部署与运行于开放的网络环境,如何保证WS-BPEL程序的可靠性尤显重要.尽管变异测试具有较强的故障检测能力,但由于变异体数量大、执行时间长、计算开销大,不利于在实践中广泛应用.为了增强变异测试的实用性,针对如何降低面向WS-BPEL程序的变异测试开销问题,从二阶变异和变异算子优先级角度提出了2种面向WS-BPEL程序的变异测试优化技术,开发了相应的集成化支持工具μBPEL.使用6个WS-BPEL程序实例对提出的优化技术的有效性进行验证.实验结果表明:提出的优化技术可以有效地减少变异体数目而并不显著降低变异测试有效性,提高了变异测试的效率.

关键词: WS-BPEL语言, 变异测试, 性能优化, 二阶变异测试, 变异算子优先级

Abstract: Business process execution language for Web service (WS-BPEL) is an executable XML-based and process-oriented service composition language. Due to unique features of Web services, such as dynamics, loose coupling, and open deployment and execution environment, it is an important issue how to assure the quality of WS-BPEL programs. Although mutation testing has a strong fault detection capability, it fails to be widely practiced due to the large number of mutants, the long execution period, and the high computation cost. In order to improve the practicability of mutation testing, we investigate how to decrease the cost of mutation testing for WS-BPEL programs, and propose two kinds of optimization techniques from the perspectives of second-order mutation and prioritization of operators. We also develop an integrated tool named μBPEL to support the mutant generation, optimization, and execution of the proposed optimization techniques. Finally, an empirical study has been conducted where six representative WS-BPEL programs are used to validate and evaluate the effectiveness of the proposed optimized mutation testing techniques. Experimental results show that the proposed optimization techniques for WS-BPEL programs are able to reduce the number of mutants without significantly jeopardizing their fault detection effectiveness and thus improve the efficiency of mutation testing.

Key words: WS-BPEL, mutation testing, performance optimization, second-order mutation testing, prioritization of mutation operators

中图分类号: