Print Email Facebook Twitter Invariant-Based Automatic Testing of AJAX User Interfaces Title Invariant-Based Automatic Testing of AJAX User Interfaces Author Mesbah, A. Van Deursen, A. Faculty Electrical Engineering, Mathematics and Computer Science Department Software Computer Technology Date 2009-12-31 Abstract This paper is a pre-print of: Ali Mesbah and Arie van Deursen. Invariant-Based Automatic Testing of AJAX User Interfaces. In Proceedings of the 31st International Conference on Software Engineering (ICSE’09), Research Papers, Vancouver, Canada, IEEE Computer Society, 2009. 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 AJAXspecific 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 applicationspecific 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. To reference this document use: http://resolver.tudelft.nl/uuid:443976bc-9a43-4351-8eef-e7dfcf47bb94 Publisher Delft University of Technology, Software Engineering Research Group ISSN 1872-5392 Source Technical Report Series TUD-SERG-2009-005 Other version https://doi.org/10.1109/ICSE.2009.5070522 Part of collection Institutional Repository Document type report Rights (c) 2009 by the authors of this report. Software Engineering Research Group, Department of Software Technology, Faculty of Electrical Engineering, Mathematics and Computer Science, Delft University of Technology. All rights reserved. No part of this series may be reproduced in any form or by any means without prior written permission of the authors. Files PDF TUD-SERG-2009-005.pdf 245.56 KB Close viewer /islandora/object/uuid:443976bc-9a43-4351-8eef-e7dfcf47bb94/datastream/OBJ/view