Invariant-Based Automatic Testing of AJAX User Interfaces

被引:92
作者
Mesbah, Ali [1 ]
van Deursen, Arie [1 ]
机构
[1] Delft Univ Technol, Software Engn Res Grp, NL-2600 AA Delft, Netherlands
来源
2009 31ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, PROCEEDINGS | 2009年
关键词
D O I
10.1109/ICSE.2009.5070522
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
AJAX-based Web 2.0 applications rely on stateful asynchronous client/server communication, and client-side runtime manipulation of the DOM tree. This not only makes them fundamentally different from traditional web applications, but also more error-prone and harder to test. We propose a method for testing AJAX applications automatically, based on a crawler to infer a flow graph for all (client-side) user interface states. We identify AJAX-specific faults that can occur in such states (related to DOM validity, error messages, discoverability, back-button compatibility, etc.) as well as DOM-tree invariants that can serve as oracle to detect such faults. We implemented our approach in ATUSA, a tool offering generic invariant checking components, a plugin-mechanism to add application specific state validators, and generation of a test suite covering the paths obtained during crawling. We describe two case studies evaluating the fault revealing capabilities, scalability required manual effort and level of automation of our approach.
引用
收藏
页码:210 / 220
页数:11
相关论文
共 26 条
[1]  
Andrews A, 2005, SOFTWARE SYSTEMS MOD, V4, P326, DOI DOI 10.1007/S10270-004-0077-7
[2]  
Artzi Shay., 2008, P 2008 INT S SOFTWAR, P261, DOI DOI 10.1145/1390630.1390662
[3]  
Benedikt Michael., 2002, Proceedings of the 11th international conference on World Wide Web (WWW02)
[4]   TAXI - A tool for XML-based testing [J].
Bertolino, Antonia ;
Gao, Jinghua ;
Marchetti, Eda ;
Polini, Andrea .
29TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: ICSE 2007 COMPANION VOLUME, PROCEEDINGS, 2007, :53-+
[5]  
Binder RV., 1999, Testing Object-Oriented Systems: Models, Patterns, and Tools
[6]  
Bozdag E, 2009, J WEB ENG, V8, P287
[7]   Improving web application testing with user session data [J].
Elbaum, S ;
Karre, S ;
Rothermel, G .
25TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, PROCEEDINGS, 2003, :49-59
[8]  
Garrett J. J., 2005, Ajax: A New Approach to Web Applications | Adaptive Path-web.archive.org
[9]  
Halfond WilliamG. J., 2007, P THE 6 JOINT M EURO, P145
[10]   A testing framework for Web application security assessment [J].
Huang, YW ;
Tsai, CH ;
Lin, TP ;
Huang, SK ;
Lee, DT ;
Kuo, SY .
COMPUTER NETWORKS, 2005, 48 (05) :739-761