Change detection in hierarchically structured information
SIGMOD '96 Proceedings of the 1996 ACM SIGMOD international conference on Management of data
The anatomy of a large-scale hypertextual Web search engine
WWW7 Proceedings of the seventh international conference on World Wide Web 7
Efficient crawling through URL ordering
WWW7 Proceedings of the seventh international conference on World Wide Web 7
Parallel state space construction for model-checking
SPIN '01 Proceedings of the 8th international SPIN workshop on Model checking of software
Coverage criteria for GUI testing
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
Proceedings of the 11th international conference on World Wide Web
Principled design of the modern Web architecture
ACM Transactions on Internet Technology (TOIT)
Mercator: A scalable, extensible Web crawler
World Wide Web
Proceedings of the 27th International Conference on Very Large Data Bases
Lectures on Petri Nets I: Basic Models, Advances in Petri Nets, the volumes are based on the Advanced Course on Petri Nets
GUI Ripping: Reverse Engineering of Graphical User Interfaces for Testing
WCRE '03 Proceedings of the 10th Working Conference on Reverse Engineering
Automatic generation of agents for collecting hidden web pages for data extraction
Data & Knowledge Engineering - Special issue: WIDM 2002
Client-Side Deep Web Data Extraction
CEC-EAST '04 Proceedings of the E-Commerce Technology for Dynamic E-Business, IEEE International Conference
SmartCrawl: a new strategy for the exploration of the hidden web
Proceedings of the 6th annual ACM international workshop on Web information and data management
UbiCrawler: a scalable fully distributed web crawler
Software—Practice & Experience
Downloading textual hidden web content through keyword queries
Proceedings of the 5th ACM/IEEE-CS joint conference on Digital libraries
The discoverability of the web
Proceedings of the 16th international conference on World Wide Web
An adaptive crawler for locating hidden-Web entry points
Proceedings of the 16th international conference on World Wide Web
Migrating Multi-page Web Applications to Single-page AJAX Interfaces
CSMR '07 Proceedings of the 11th European Conference on Software Maintenance and Reengineering
Crawling AJAX by Inferring User Interface State Changes
ICWE '08 Proceedings of the 2008 Eighth International Conference on Web Engineering
Proceedings of the VLDB Endowment
A component- and push-based architectural style for ajax applications
Journal of Systems and Software
AJAX Crawl: Making AJAX Applications Searchable
ICDE '09 Proceedings of the 2009 IEEE International Conference on Data Engineering
Invariant-based automatic testing of AJAX user interfaces
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Automated security testing of web widget interactions
Proceedings of the the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Regression Testing Ajax Applications: Coping with Dynamism
ICST '10 Proceedings of the 2010 Third International Conference on Software Testing, Verification and Validation
Automated cross-browser compatibility testing
Proceedings of the 33rd International Conference on Software Engineering
Adding usability to web engineering models and tools
ICWE'05 Proceedings of the 5th international conference on Web Engineering
Crawling web pages with support for client-side dynamism
WAIM '06 Proceedings of the 7th international conference on Advances in Web-Age Information Management
Automated analysis of CSS rules to support style maintenance
Proceedings of the 34th International Conference on Software Engineering
JSART: javascript assertion-based regression testing
ICWE'12 Proceedings of the 12th international conference on Web Engineering
The CloudBrowser web application framework
Proceedings of the 3rd annual conference on Systems, programming, and applications: software for humanity
Crawling rich internet applications: the state of the art
CASCON '12 Proceedings of the 2012 Conference of the Center for Advanced Studies on Collaborative Research
A grey-box approach for automated GUI-model generation of mobile applications
FASE'13 Proceedings of the 16th international conference on Fundamental Approaches to Software Engineering
Guided test generation for web applications
Proceedings of the 2013 International Conference on Software Engineering
X-PERT: accurate identification of cross-browser issues in web applications
Proceedings of the 2013 International Conference on Software Engineering
Server interface descriptions for automated testing of JavaScript web applications
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
Mining behavior models from enterprise web applications
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
SeeSS: seeing what i broke -- visualizing change impact of cascading style sheets (css)
Proceedings of the 26th annual ACM symposium on User interface software and technology
Interactive record/replay for web application debugging
Proceedings of the 26th annual ACM symposium on User interface software and technology
Guided GUI testing of android apps with minimal restart and approximate learning
Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications
The anatomy of a sales configurator: an empirical study of 111 cases
CAiSE'13 Proceedings of the 25th international conference on Advanced Information Systems Engineering
Hidden-Web induced by client-side scripting: an empirical study
ICWE'13 Proceedings of the 13th international conference on Web Engineering
Building rich internet applications models: example of a better strategy
ICWE'13 Proceedings of the 13th international conference on Web Engineering
A brief history of web crawlers
CASCON '13 Proceedings of the 2013 Conference of the Center for Advanced Studies on Collaborative Research
Hi-index | 0.00 |
Using JavaScript and dynamic DOM manipulation on the client side of Web applications is becoming a widespread approach for achieving rich interactivity and responsiveness in modern Web applications. At the same time, such techniques---collectively known as Ajax---shatter the concept of webpages with unique URLs, on which traditional Web crawlers are based. This article describes a novel technique for crawling Ajax-based applications through automatic dynamic analysis of user-interface-state changes in Web browsers. Our algorithm scans the DOM tree, spots candidate elements that are capable of changing the state, fires events on those candidate elements, and incrementally infers a state machine that models the various navigational paths and states within an Ajax application. This inferred model can be used in program comprehension and in analysis and testing of dynamic Web states, for instance, or for generating a static version of the application. In this article, we discuss our sequential and concurrent Ajax crawling algorithms. We present our open source tool called Crawljax, which implements the concepts and algorithms discussed in this article. Additionally, we report a number of empirical studies in which we apply our approach to a number of open-source and industrial Web applications and elaborate on the obtained results.