DocumentCode
2290840
Title
Crawling AJAX by Inferring User Interface State Changes
Author
Mesbah, Ali ; Bozdag, Engin ; Van Deursen, Arie
Author_Institution
Delft Univ. of Technol., Delft
fYear
2008
fDate
14-18 July 2008
Firstpage
122
Lastpage
134
Abstract
AJAX is a very promising approach for improving rich interactivity and responsiveness of web applications. At the same time, AJAX techniques shatter the metaphor of a web "page" upon which general search crawlers are based. This paper describes a novel technique for crawling AJAX applications through dynamic analysis and reconstruction of user interface state changes. Our method dynamically infers a state-flow graph modeling the various navigation paths and states within an AJAX application. This reconstructed model can be used to generate linked static pages. These pages could be used to expose AJAX sites to general search engines. Moreover, we believe that the crawling techniques that are part of our solution have other applications, such as within general search engines, accessibility improvements, or in automatically exercising all user interface elements and conducting state-based testing of AJAX applications. We present our open source tool called CRAWLJAX which implements the concepts discussed in this paper. Additionally, we report a case study in which we apply our approach to a number of representative AJAX applications and elaborate on the obtained results.
Keywords
Internet; Java; XML; interactive programming; user interfaces; AJAX; JavaScript; World Wide Web; XML; graph modeling; interactivity; user interface; Automatic testing; Crawlers; Delay; Java; Navigation; Search engines; System testing; Uniform resource locators; User interfaces; Web pages; ajax; crawler; search engine;
fLanguage
English
Publisher
ieee
Conference_Titel
Web Engineering, 2008. ICWE '08. Eighth International Conference on
Conference_Location
Yorktown Heights, NJ
Print_ISBN
978-0-7695-3261-5
Electronic_ISBN
978-0-7695-3261-5
Type
conf
DOI
10.1109/ICWE.2008.24
Filename
4577876
Link To Document