Abstract
Web applications have begun to be used in wide variety of areas including social networks, shopping, online banking, control systems and other critical systems. Complexity of applications have raised as well as requirements for security and traceability. Due to short delivery times and changing requirements, quality assurance of web applications is usually an informal process. Formal methods have been proven to be safe approach to the specification, verification, and testing of systems. The aim of the proposed research is to make formal methods applicable to the web applications development. A technique that could extract extended finite state model by combination of static and dynamic analysis is developed. This method supports both applications with transitions between web pages and single-page applications with AJAX requests and dynamic DOM modifications. Two different algorithms are proposed that simplify the state model by merging similar states to achieve a human readable models even for the complex real world web applications. The obtained model could be used to define formal requirements for the application and to make model checking part of the continuous integration process for web development.
Keywords
- Model-based testing
- FSM
- Model Checking
- Web Applications
This is a preview of subscription content, access via your institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Holmes, A., Kellogg, M.: Automating Functional Tests Using Selenium. In: AGILE 2006, pp. 270–275 (2006)
Web test automation tool, http://sahi.co.in/w/sahi
Alalfi, M.H., Cordy, J.R., Dean, T.R.: Modelling methods for web application verification and testing: state of the art. Softw. Test., Verif. Reliab., 265–296 (2009)
Hassan, A.E., Holt, R.C.: Architecture recovery of web applications. In: Proceedings of the 24th ICSE, pp. 349–359. ACM Press, New York (2002)
Antoniol, G., Di Penta, M., Zazzara, M.: Understanding Web Applications through Dynamic Analysis. In: Proceedings of the IWPC 2004, pp. 120–131 (2004)
Di Lucca, G.A., Di Penta, M.: Integrating Static and Dynamic Analysis to improve the Comprehension of Existing Web Applications. In: Proceedings 7th IEEE WSE, Washington, DC, USA, pp. 87–94 (2005)
Hall, S., Ettema, T., Bunch, C., Bultan, T.: Eliminating navigation errors in web applications via model checking and runtime enforcement of navigation state machines. In: ASE 2010, pp. 235–244 (2010)
Haydar, M.: Formal Framework for Automated Analysis and Verification of Web-Based Applications. In: ASE 2004, pp. 410–413 (2004)
Kubo, A., Washizaki, H., Fukazawa, Y.: Automatic Extraction and Verification of Page Transitions in a Web Application. In: APSEC 2007, pp. 350–357 (2007)
Marchetto, A., Tonella, P., Ricca, F.: State-Based Testing of Ajax Web Applications. In: ICST 2008, pp. 121–130 (2008)
Zakonov, A., Stepanov, O., Shalyto, A.A.: GA-Based and Design by Contract Approach to Test Generation for EFSMs. In: IEEE EWDTS 2010, pp. 152–155 (2010)
Huang, Y., Yu, F., Hang, C., Tsai, C., Lee, D.T., Kuo, S.: Verifying Web Applications Using Bounded Model Checking. In: DSN 2004, pp. 199–208 (2004)
Homma, K., Izumi, S., Abe, Y., Takahashi, et al.: Using the Model Checker Spin for Web Application Design. In: SAINT 2010, pp. 137–140 (2010)
Homma, K., Izumi, S., Takahashi, K., Togashi, A., et al.: Modeling Web Applications Design with Automata and Its Verification. In: ISADS 2011, pp. 103–112 (2011)
Document Object Model by the World Wide Web Consortium, http://www.w3.org/DOM/
Kaufmann, M., Wagner, D. (eds.): Drawing Graphs: Methods and Models, 326 pages. Springer (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Zakonov, A., Shalyto, A. (2012). Extracting EFSMs of Web Applications for Formal Requirements Specification. In: Ortmeier, F., Daniel, P. (eds) Computer Safety, Reliability, and Security. SAFECOMP 2012. Lecture Notes in Computer Science, vol 7612. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33678-2_14
Download citation
DOI: https://doi.org/10.1007/978-3-642-33678-2_14
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-33677-5
Online ISBN: 978-3-642-33678-2
eBook Packages: Computer ScienceComputer Science (R0)
