Skip to main content
Log in

Testing Web applications by modeling with FSMs

  • Regular Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

Researchers and practitioners are still trying to find effective ways to model and test Web applications. This paper proposes a system-level testing technique that combines test generation based on finite state machines with constraints. We use a hierarchical approach to model potentially large Web applications. The approach builds hierarchies of Finite State Machines (FSMs) that model subsystems of the Web applications, and then generates test requirements as subsequences of states in the FSMs. These subsequences are then combined and refined to form complete executable tests. The constraints are used to select a reduced set of inputs with the goal of reducing the state space explosion otherwise inherent in using FSMs. The paper illustrates the technique with a running example of a Web-based course student information system and introduces a prototype implementation to support the technique.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Ammann P, Offutt AJ (1994) Using formal methods to derive test frames in category-partition testing. In: Proceedings of the Ninth Annual Conference on Computer Assurance (COMPASS 94), Gaithersburg MD. IEEE Computer Society Press, pp 69–80, June

  2. Benedikt M, Freire J, Godefroid P (2002) VeriWeb: Automatically testing dynamic Web sites. In: Proceedings of 11th International World Wide Web Conference (WWW’2002), Honolulu, HI, May

  3. Chilenski JJ, Miller SP (1994) Applicability of modified condition/decision coverage to software testing. Software Engineering Journal, pp 193–200, September

  4. Chow T (1978) Testing software designs modeled by finite-state machines. IEEE Transactions on Software Engineering SE-4(3):178–187, May

  5. Derrick J, Boiten E (1999) Testing refinements of state-based formal specifications. Software Testing, Verification, and Reliability 9(1):27–50, December

  6. Dick J, Faivre A (1993) Automating the generation and sequencing of test cases from model-based specifications. In: Proceedings of FME ’93: Industrial-Strength Formal Methods, Odense, Denmark, Lecture Notes in Computer Science, vol 670. Springer-Verlag, pp 268–284

  7. Fujiwara S, Bochmann G, Khendek F, Amalou M, Ghedasmi A (1991) Test selection based on finite state models. IEEE Transactions on Software Engineering 17(6):591–603, June

    Article  Google Scholar 

  8. Gao JZ, Kung D, Hsia P, Toyoshima Y, Chen C (1995) Object state testing for object-oriented programs. In: 19th Computer Software and Applications Conference (COMPSAC 95), Dallas, TX, pp 232–238, August

  9. Gonenc G (1970) A method for the design of fault-detection experiments. IEEE Transactions on Computers C-19:155–558, June

  10. Grindal M, Offutt J, Andler SF (2004) Combination testing strategies: A survey. Technical report ISE-TR-04-05, Department of Information and Software Engineering, George Mason University, Fairfax VA, July. http://www.ise.gmu.edu/techrep/

  11. The Object Management Group (1999) OMG unified modeling language specification. Version 1.3, OMG, 1999

  12. Howden WE (1975) Methodology for the generation of program test data. IEEE Transactions on Software Engineering SE-24:208–215, May

  13. Hower R (2002) Web site test tools and site management tools. Software QA and Testing Resource Center. www.softwareqatest.com/qatweb1.html (accessed November 2003)

  14. Huang JC (1975) An approach to program testing. ACM Computing Surveys 7(3):113–128, September

    Article  Google Scholar 

  15. Jia X, Liu H (2002) Rigorous and automatic testing of Web applications. In: 6th IASTED International Conference on Software Engineering and Applications (SEA 2002), Cambridge, MA, pp 280–285, November

  16. Kung D, Liu CH, Hsia P (2000) A model-based approach for testing Web applications. In: Proc. of Twelfth International Conference on Software Engineering and Knowledge Engineering, Chicago, IL, July

  17. Kung D, Liu CH, Hsia P (2000) An object-oriented Web test model for testing Web applications. In: Proc. of IEEE 24th Annual International Computer Software and Applications Conference (COMPSAC2000), Taipei, Taiwan, pp 537–542, October

  18. Kung D, Suchak N, Gao J, Hsia P, Toyoshima Y, Chen C (1993) On object state testing. In: Eighteenth Annual International Computer Software & Applications Conference, Los Alamitos, CA. IEEE Computer Society Press, pp 222–227

  19. Lee SC, Offutt J (2001) Generating test cases for XML-based Web component interactions using mutation analysis. In: Proceedings of the 12th International Symposium on Software Reliability Engineering, Hong Kong, China, November. IEEE Computer Society Press, pp 200–209

  20. Luo G, von Bochmann, G, Petrenko A (1994) Test selection based on communicating nondeterministic finite-state machines using a generalized Wp-method. IEEE Transactions on Software Engineering 20(2):149–162, February

    Article  Google Scholar 

  21. Miller E (2003) Evalid. Software Research Associates, San Francisco, CA

  22. Naito S, Tsunoyama M (1981) Fault detection for sequential machines by transition tours. In: Proceedings Fault Tolerant Computing Systems. IEEE Computer Society Press, pp 238–243

  23. Nielsen J (2000) Designing Web Usability. New Riders Publishing

  24. Offutt J, Abdurazik A (1999) Generating tests from UML specifications. In: Proceedings of the Second IEEE International Conference on the Unified Modeling Language (UML99), Fort Collins, CO, Lecture Notes in Computer Science, vol 1723. Springer-Verlag, pp 416–429, October

  25. Offutt J, Liu S, Abdurazik A, Ammann P (2003) Generating test data from state-based specifications. The Journal of Software Testing, Verification, and Reliability 13(1):25–53, March

  26. Offutt J, Xiong Y, Liu S (1999) Criteria for generating specification-based tests. In: Proceedings of the Fifth IEEE International Conference on Engineering of Complex Computer Systems (ICECCS ’99), Las Vegas, NV. IEEE Computer Society Press, pp 119–131, October

  27. Pimont S, Rault JC (1979) An approach towards reliable software. In: Proceedings of the 4th International Conference on Software Engineering, Munich, Germany, pp 220–230

  28. Ran L, Dyreson C, Andrews A (2004) AutoDBT: A framework for database-driven testing of Web applications. Master’s thesis, Department of EE and CS, Washington State University, Pullman WA

  29. Ricca F, Tonella P (2001) Analysis and testing of Web applications. In: 23rd International Conference on Software Engineering (ICSE ‘01), Toronto, CA, pp 25–34, May

  30. Sabnani K, Dahbura A (1988) A protocol testing procedure. Computer Networks and ISDN Systems 14(4):285–297

    Article  Google Scholar 

  31. Turner CD, Robson DJ (1993) The state-based testing of object-oriented programs. In: Proceedings of the 1993 IEEE Conference on Software Maintenance (CSM-93), Montreal, Quebec, Canada, pp 302–310, September

  32. von Mayrhauser A, Mraz R (1999) Using domain models for system testing. In: Advances in Computers, vol 49. Academic Press, pp 143–190

  33. Wu Y, Offutt J, Du X (2004) Modeling and testing of dynamic aspects of Web applications. Technical report ISE-TR-04-01, Department of Information and Software Engineering, George Mason University, Fairfax, VA, July. http://www.ise.gmu.edu/techrep/

  34. Yang J, Huang J, Wang F, Chu W (1999) An object-oriented architecture supporting Web application testing. In: First Asian-Pacific Conference on Quality Software (APAQS ’99), Japan, pp 122–129, December

  35. Yang J-T, Huang J-L, Wang F-J, Chu WC (2002) Constructing an object-oriented architecture for Web application testing. Journal of Information Science and Engineering 18(1):59–84, January

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Anneliese A. Andrews.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Andrews, A., Offutt, J. & Alexander, R. Testing Web applications by modeling with FSMs. Softw Syst Model 4, 326–345 (2005). https://doi.org/10.1007/s10270-004-0077-7

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-004-0077-7

Keywords

Navigation