Automatic Testing of AJAX Applications through Dynamic Analysis of User Interface State Change

Swapnil S.Mane, Amol B. Rajmane
2014 International Journal of Computer Applications  
The growing popularity and importance of web applications have been increasing continuously in recent years. Use of JAVASCRIPT and dynamic DOM (Document Object Model) manipulation on the client side of web applications is becoming a widespread approach for achieving rich interactivity and responsiveness in modern web applications. AJAX (Asynchronous JAVASCRIPT and XML) based web applications rely on asynchronous client-server communication and client-side runtime manipulation of the DOM tree.
more » ... is not only makes them fundamentally different from traditional web applications but also make them more error prone and harder to test. The proposed method for testing automatically AJAX application is based on a crawler to infer a state-flow graph for all client-side user interface states of an AJAX application. Focus is on obtaining a model by "crawling" an AJAX application, automatically clicking buttons and other user interface elements. In order to recognize failures in executions, use of invariants are proposed [1] . These invariants can be generic (e.g., after any client-side change the DOM should remain W3C-compliant valid HTML) or application-specific (e.g., the home-button in any state should lead back to the starting state).
doi:10.5120/16637-6601 fatcat:jktvxxhcpfdb3bwyr2teat2ypa