Finding and Emulating Keyboard, Mouse, and Touch Interactions and Gestures while Crawling RIA’s, accepted at SEKE 2015 (CORE Rank B) as regular paper

Frederik Nakstad, Hironori Washizaki, Yoshiaki Fukazawa, “Finding and Emulating Keyboard, Mouse, and Touch Interactions and Gestures while Crawling RIA’s,” Proceedings of the 27th International Conference on Software Engineering and Knowledge Engineering (SEKE 2015), Wyndham Pittsburgh University Center, Pittsburgh, USA, July 6-8 2015. (to appear)

Crawling JavaScript heavy Rich Internet Applications has been a hot topic in recent years, giving us automated tools for indexing content, test generation, and security- and accessibility evaluation to mention a few examples. However, existing crawling techniques tend to ignore user interactions beyond mouse clicking, and therefore often fail to consider potential mouse, keyboard and touch interactions. We propose a new technique for finding and exercising mouse, keyboard, and touch interactions when crawling highly interactive JavaScript-based websites by analyzing and exercising event handlers registered in the DOM. A basic form of gesture emulation is employed to find states accessible via swiping and tapping. Testing the tool against 6 well-known gesture libraries and 5 actual RIA’s, we find that the technique discovers many states and transitions resulting from such interactions. Our findings indicate the technique could be useful for automatic test generation, error discovery, and accessibility evaluation, especially for mobile web applications with advanced interaction options.