Automatic fault localization for client-side Java']JavaScript

被引:16
作者
Ocariza, Frolin S., Jr. [1 ]
Li, Guanpeng [1 ]
Pattabiraman, Karthik [1 ]
Mesbah, Ali [1 ]
机构
[1] Univ British Columbia, Dept Elect & Comp Engn, Vancouver, BC V5Z 1M9, Canada
基金
加拿大自然科学与工程研究理事会;
关键词
!text type='Java']Java[!/text]Script; fault localization; dynamic slicing; Document Object Model (DOM);
D O I
10.1002/stvr.1576
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
JAVASCRIPT is a scripting language that plays a prominent role in web applications today. It is dynamic, loosely typed and asynchronous and is extensively used to interact with the Document Object Model (DOM) at runtime. All these characteristics make JAVASCRIPT code error-prone; unfortunately, JAVASCRIPT fault localization remains a tedious and mainly manual task. Despite these challenges, the problem has received very limited research attention. This paper proposes an automated technique to localize JAVASCRIPT faults based on dynamic analysis, tracing and backward slicing of JAVASCRIPT code. This technique is capable of handling features of JAVASCRIPT code that have traditionally been difficult to analyse, including eval, anonymous functions and minified code. The approach is implemented in an open source tool called AUTOFLOX, and evaluation results indicate that it is capable of (1) automatically localizing DOM-related JAVASCRIPT faults with high accuracy (over 96%) and no false-positives and (2) isolating JAVASCRIPT faults in production websites and actual bugs from real-world web applications. Copyright (c) 2015John Wiley & Sons, Ltd.
引用
收藏
页码:69 / 88
页数:20
相关论文
共 41 条
[1]   Spectrum-based Multiple Fault Localization [J].
Abreu, Rui ;
Zoeteweij, Peter ;
van Gemund, Arjan J. C. .
2009 IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, PROCEEDINGS, 2009, :88-99
[2]  
Agrawal H, 1995, SIXTH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING, PROCEEDINGS, P143, DOI 10.1109/ISSRE.1995.497652
[3]   Understanding Java']JavaScript Event-Based Interactions [J].
Alimadadi, Saba ;
Sequeira, Sheldon ;
Mesbah, Ali ;
Pattabiraman, Karthik .
36TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2014), 2014, :367-377
[4]  
Andrica S, 2011, I C DEPEND SYS NETWO, P403, DOI 10.1109/DSN.2011.5958253
[5]  
[Anonymous], 2005, P 6 INT S AUTOMATED
[6]  
[Anonymous], 2009, P 18 USENIX SEC S
[7]  
Artzi S, 2011, 2011 33RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), P571, DOI 10.1145/1985793.1985871
[8]  
Artzi Shay., 2010, P 32 ACMIEEE INT C S, P265, DOI 10.1145/1806799
[9]   SAFEWAPI: Web API Misuse Detector for Web Applications [J].
Bae, SungGyeong ;
Cho, Hyunghun ;
Lim, Inho ;
Ryu, Sukyoung .
22ND ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (FSE 2014), 2014, :507-517
[10]  
Bandyopadhyay A., 2012, 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation (ICST 2012), P41, DOI 10.1109/ICST.2012.84