计算机科学 ›› 2021, Vol. 48 ›› Issue (1): 301-307.doi: 10.11896/jsjkx.200900051

• 信息安全 • 上一篇    下一篇

一种基于变异分析的BPEL程序故障定位技术

孙昌爱, 张守峰, 朱维忠   

  1. 北京科技大学计算机与通信工程学院 北京 100083
  • 收稿日期:2020-09-04 修回日期:2020-10-13 出版日期:2021-01-15 发布日期:2021-01-15
  • 通讯作者: 孙昌爱(casun@ustb.edu.cn)
  • 基金资助:
    国家自然科学基金(61872039); 中央高校基本科研业务费专项资金资助项目(FRF-GF-19-019B)

Mutation Based Fault Localization Technique for BPEL Programs

SUN Chang-ai, ZHANG Shou-feng, ZHU Wei-zhong   

  1. School of Computer and Communication Engineering,University of Science and Technology Beijing,Beijing 100083,China
  • Received:2020-09-04 Revised:2020-10-13 Online:2021-01-15 Published:2021-01-15
  • About author:SUN Chang-ai,born in 1974,Ph.D,professor,Ph.D supervisor,is a senior member of China Computer Federation.His main research interests include software testing,program analysis and service oriented computing.
  • Supported by:
    National Natural Science Foundation of China(61872039) and Fundamental Research Funds for the Central Universities(FRF-GF-19-019B).

摘要: 不同于传统C,C++或Java程序,BPEL (Business Process Execution Language)程序由一组活动及其之间的交互组成,同时引入了并发、序列化、XML表示等新特征,这些新特点使得定位BPEL程序的故障具有一定的挑战性。针对现有故障定位技术在有效性方面的不足,提出一种基于变异分析的BPEL程序故障定位技术,依据BPEL程序的特点及其变异算子的特点设计了一组优化策略,开发了相应的支持工具。通过一组BPEL程序实例来评估所提方法的有效性,比较了所提方法与现有BPEL程序故障定位技术的定位效果。实验结果表明,与现有方法相比,所提方法具有较高的召回率,故障定位代价基本相当,提出的优化策略进一步降低了所提方法的变异执行开销。

关键词: BPEL, 变异分析, 程序调试, 故障定位, 软件测试

Abstract: Unlike traditional C,C++,or Java programs,BPEL (Business Process Execution Language) programs are composed of a set of activities and their interactions,which have the new features such as concurrency,synchronization,and XML-based representation.These new features pose difficulties for effectively locating faults in BPEL programs.To address the limited effectiveness of existing fault localization techniques,we propose a mutation-based BPEL program fault localization technique,design a set of optimization strategies based on characteristics of BPEL programs and their mutation operators,and develop a supporting tool.6 real-life BPEL programs are conducted to evaluate the feasibility and fault localization effectiveness of the proposed technique and its effectiveness is also compared with that of a set of benchmark techniques.Experimental results show that the proposed technique has a higher recall rate while a comparable cost is compared with benchmark techniques,demonstrating that the proposed optimization strategies reduce the mutation cost of the proposed technique.

Key words: BPEL, Fault localization, Mutation analysis, Program debugging, Software testing

中图分类号: 

  • TP311
[1] WONG W E,GAO R,LI Y,et al.A survey on software fault localization [J].IEEE Transactions on Software Engineering,2016,42(8):707-740.
[2] SUN C A.Some Open Issues in SOA software development[EB/OL].Beijing:Science Paper Online.http://www.paper.edu.cn/releasepaper/content /201107-461.
[3] SUN C A,ZHAI Y M,SHANG Y,et al.BPELDebuger:An effective BPEL-specific fault localization framework [J].Information and Software Technology,2013,55(12):2140-2153.
[4] ZHENG C Y.A Predicate Switching based Approach to Locating Faults of BPEL Programs and Supporting tool[D].Beijing:University of Science and Technology Beijing,2015.
[5] SUN C A,RAN Y F,ZHENG C Y,et al.Fault localization for WS-BPEL program based on predicate switching and program slicing[J].Journal of Systems and Software,2018,135(1):191-204.
[6] PAPADAKIS M,TRAON Y L.Using mutants to locate “Unknown” faults[C]//Proceedings of the fifth International Conference on Software Testing.Verification and Validation,IEEE Computer Society,2012:691-700.
[7] SUN C A,ZHAO Y,PAN L,et al.Automated Testing of WS-BPEL Service Compositions:a Scenario-oriented Approach [J].IEEE Transactions on Services Computing,2018,11(4):616-629.
[8] SUN C A,PAN L,WANG Q L,et al.An empirical study onmutation testing of WS-BPEL programs [J].The Computer Journal,2017,60(1):143-158.
[9] SUN C A,WANG Z,PAN L.Optimized Mutation TestingTechniques for WS-BPEL Programs[J].Journal of Computer Research and Development,2019,56(4):895-905.
[10] ESTERO-BOTARO A,MEDINA-BULO I.MuBPEL [EB/OL].https:// neptuno.uca.es/redmine/projects/sources-fm/wiki/MuBPEL.html.
[11] JONES J A,HARROLD M J,STASKO J.Visualization of test information to assist fault localization[C]//Proceeding of the 24th International Conference on Software Engineering.IEEE Computer Society,2002:467-477.
[12] Eviware.Web services business process execution language[EB/OL].http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html.
[13] WONG W E,DEBROY V,GAO R,et al.The DStar method for effective software fault localization [J].IEEE Transactions on Reliability,2014,63(1):290-308.
[14] PAPADAKIS M,TRAON Y L.Metallaxis-FL:mutation-based fault localization [J].Software Testing,Verification and Reliability,2015,25(5/6/7):605-628.
[15] HE T,WANG X M,ZHOU X C,et al.A Software Fault Localization Technique Based on Program Mutations [J].Chinese Journal of Computers,2013,36(11):2236-2244.
[16] MOON S,KIM Y,KIM M,et al.Ask the mutants:mutatingfaulty programs for fault localization[C]//Proceedings of the 2014 IEEE Seventh International Conference on Software Testing,Verification and Validation.IEEE Computer Society,2014:153-162.
[17] PAPADAKIS M,TRAON Y L.Effective fault localization via mutation analysis:a selective mutation approach[C]//Proceedings of the 29th Annual ACM Symposium on Applied Computing.ACM press,2014:1293-1300.
[18] LIU Y,LI Z,WANG L X,et al.Statement-oriented mutant reduction strategy for mutation based fault localization[C]//Proceedings of the 2017 IEEE International Conference on Software Quality,Reliability and Security.IEEE Computer Society,2017:126-137.
[19] WANG L X,WANG W W,ZHAO R L,et al.MBFL with Statement-oriented Mutant Reduction Strategy[J].Computer Science,2017,44(11):175-180.
[20] GONG P,GENG C Y,GUO J X,et al.Dynamic Mutation Execution Strategy for Mutation-based Fault Location [J].Computer Science,2016,43(2):199-203,229.
[1] 苏庆, 黎智洲, 刘添添, 吴伟民, 黄剑锋, 李小妹.
程序调试中的树形结构演变可视化模型
Tree Structure Evaluation Visualization Model for Program Debugging
计算机科学, 2021, 48(5): 68-74. https://doi.org/10.11896/jsjkx.200100133
[2] 滕俊元, 高猛, 郑小萌, 江云松.
噪声可容忍的软件缺陷预测特征选择方法
Noise Tolerable Feature Selection Method for Software Defect Prediction
计算机科学, 2021, 48(12): 131-139. https://doi.org/10.11896/jsjkx.201000168
[3] 文进, 张星宇, 沙朝锋, 刘艳君.
基于次模函数最大化的测试用例集约简
Test Suite Reduction via Submodular Function Maximization
计算机科学, 2021, 48(12): 75-84. https://doi.org/10.11896/jsjkx.210300086
[4] 刘芳, 洪玫, 王潇, 郭丹, 杨正卉, 黄小丹.
面向Java的Randoop自动化单元测试生成工具性能分析
Performance Analysis of Randoop Automated Unit Test Generation Tool for Java
计算机科学, 2020, 47(9): 24-30. https://doi.org/10.11896/jsjkx.200200116
[5] 夏春艳, 王兴亚, 张岩.
基于多目标优化的测试用例优先级排序方法
Test Case Prioritization Based on Multi-objective Optimization
计算机科学, 2020, 47(6): 38-43. https://doi.org/10.11896/jsjkx.191100113
[6] 薄莉莉, 姜淑娟, 张艳梅, 王兴亚, 于巧.
并发缺陷检测技术研究进展
Research Progress on Techniques for Concurrency Bug Detection
计算机科学, 2019, 46(5): 13-20. https://doi.org/10.11896/j.issn.1002-137X.2019.05.002
[7] 李志博,李清宝,于磊,侯雪梅.
基于划分的自适应随机测试综述
Survey on Adaptive Random Testing by Partitioning
计算机科学, 2019, 46(3): 19-29. https://doi.org/10.11896/j.issn.1002-137X.2019.03.003
[8] 王蓁蓁, 刘嘉.
基于校正因子的随机TBFL方法
Stochastic TBFL Approach Based on Calibration Factor
计算机科学, 2019, 46(11): 161-167. https://doi.org/10.11896/jsjkx.191100503C
[9] 包晓安, 熊子健, 张唯, 吴彪, 张娜.
一种基于改进遗传算法的路径测试用例生成方法
Approach for Path-oriented Test Cases Generation Based on Improved Genetic Algorithm
计算机科学, 2018, 45(8): 174-178. https://doi.org/10.11896/j.issn.1002-137X.2018.08.031
[10] 张兴隆,于磊,侯雪梅,侯韶凡.
面向对象程序蜕变关系构造方法
Method of Metamorphic Relations Constructing for Object-oriented Software Testing
计算机科学, 2017, 44(Z11): 485-489. https://doi.org/10.11896/j.issn.1002-137X.2017.11A.103
[11] 高雪笛,周丽娟,张树东,柳昊明.
基于改进遗传算法的测试数据自动生成的研究
Research on Test Data Automatic Generation Based on Improved Genetic Algorithm
计算机科学, 2017, 44(3): 209-214. https://doi.org/10.11896/j.issn.1002-137X.2017.03.044
[12] 陈诚,郑征,王皓钦,乔禹.
基于测试充分性准则的非死锁并发缺陷定位方法
Non-deadlock Concurrency Fault Localization Approach Based on Adequate Test Criteria
计算机科学, 2017, 44(11): 195-201. https://doi.org/10.11896/j.issn.1002-137X.2017.11.030
[13] 王林鑫,王微微,赵瑞莲,李征.
面向语句的MBFL变异体约减策略
MBFL with Statement-oriented Mutant Reduction Strategy
计算机科学, 2017, 44(11): 175-180. https://doi.org/10.11896/j.issn.1002-137X.2017.11.026
[14] 张亚.
服务组合BPEL测试序列生成研究
Research on BPEL Test Sequence Generation for Web Services Combination
计算机科学, 2017, 44(1): 203-207. https://doi.org/10.11896/j.issn.1002-137X.2017.01.039
[15] 龚沛,耿楚瑶,郭俊霞,赵瑞莲.
针对基于变异错误定位的一种动态变异执行策略
Dynamic Mutation Execution Strategy for Mutation-based Fault Localization
计算机科学, 2016, 43(2): 199-203. https://doi.org/10.11896/j.issn.1002-137X.2016.02.043
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!