Model-Based Testing of GUI-Driven Applications

  • Vivien Chinnapongse
  • Insup Lee
  • Oleg Sokolsky
  • Shaohui Wang
  • Paul L. Jones
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5860)


While thorough testing of reactive systems is essential to ensure device safety, few testing methods center on GUI-driven applications. In this paper we present one approach for the model-based testing of such systems. Using the AHLTA-Mobile case study to demonstrate our approach, we first introduce a high-level method of modeling the expected behavior of GUI-driven applications. We show how to use the NModel tool to generate test cases from this model and present a way to execute these tests within the application, highlighting the challenges of using an API-geared tool in a GUI-based setting. Finally we present the results of our case study.


Model Program Mental Model State Machine Test Suite Initial Valuation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Alur, R., Arney, D., Gunter, E.L., Lee, I., Lee, J., Nam, W., Pearce, F., Van Albert, S., Zhou, J.: Formal specifications and analysis of the computer-assisted resuscitation algorithm (CARA) infusion pump control system. Software Tools for Technology Transfer 5(4), 308–319 (2004)CrossRefGoogle Scholar
  2. 2.
    AHLTA-Mobile fact sheet. Medical Communications for Combat Casualty Care Web Site,
  3. 3.
    Arney, D., Jetley, R., Jones, P., Lee, I., Sokolsky, O.: Formal methods based development of a PCA infusion pump reference model: the generic infusion pump (GIP) project. In: Joint Workshop on High-Confidence Medical Devices, Software and Systems and Medical Device Plug-and-Play Interoperability, July 2007, pp. 23–33 (2007)Google Scholar
  4. 4.
    Brooks, P., Memon, A.M.: Automated GUI testing guided by usage profiles. In: Proceedings of the 22nd IEEE International Conference on Automated Software Engineering (ASE 2007) (November 2007)Google Scholar
  5. 5.
    Cheng, K.T., Krishnakumar, A.S.: Automatic functional test generation using the extended finite state machine model. In: Proceedings of the 30th international conference on Design automation (DAC 1993), June 1993, pp. 86–91 (1993)Google Scholar
  6. 6.
    Microsoft Corporation. NModel website (2009),
  7. 7.
    Jacky, J., Veanes, M., Campbell, C., Schulte, W.: Model-based Software Testing and Analysis with C#. Cambridge University Press, Cambridge (2008)zbMATHGoogle Scholar
  8. 8.
    Jard, C., Jéron, T.: TGV: theory, principles and algorithms. a tool for the automatic synthesis of conformance test cases for non-deterministic reactive systems. Software Tools for Technology Transfer (2004)Google Scholar
  9. 9.
    Kervinen, A., Maunumaa, M., Pääkkönen, T., Katara, M.: Model-based testing through a GUI. In: Grieskamp, W., Weise, C. (eds.) FATES 2005. LNCS, vol. 3997, pp. 16–31. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  10. 10.
    Legrenzi, P., Girotto, V.: Mental models in reasoning and decision making. In: Garnham, A., Oakhill, J. (eds.) Mental models in cognitive science, pp. 95–118 (1996)Google Scholar
  11. 11.
    Lewis, C.: A model of mental model construction. In: Proceedings of the SIGCHI conference on Human factors in computing systems (CHI 1986), pp. 306–313 (1986)Google Scholar
  12. 12.
    Paiva, A., Faria, J., Tillmann, N., Vidal, R.: A model-to-implementation mapping tool for automated model-based GUI testing. In: Lau, K.-K., Banach, R. (eds.) ICFEM 2005. LNCS, vol. 3785, pp. 450–464. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  13. 13.
    Reza, H., Endapally, S., Grant, E.S.: A model-based approach for testing gui using hierarchical predicate transition nets. In: ITNG, pp. 366–370 (2007)Google Scholar
  14. 14.
    Silva, J.L., Campos, J.C., Paiva, A.C.R.: Model-based user interface testing with spec explorer and concurtasktrees. Electronic Notes in Theoretical Computer Science 208, 77–93 (2008)CrossRefGoogle Scholar
  15. 15.
    Tretmans, J.: Test generation with inputs, outputs and repetitive quiescence. Software - Concepts and Tools 17(3), 103–120 (1996)zbMATHGoogle Scholar
  16. 16.
    U.S. Army Medical Research & Material Command, Mobile Computing Group, Telemedicine and Advanced Technology Research Center, Fort Detrick, Maryland. AHLTA-Mobile User Manual, v2.2.61Google Scholar
  17. 17.
    Wasserman, A.I.: Extending state transition diagrams for the specification of human-computer interaction. IEEE Transactions on Software Engineering 11(8), 699–713 (1985)CrossRefGoogle Scholar
  18. 18.
    Xie, Q., Memon, A.: Model-based testing of community-driven driven open source GUI applications. In: 22nd International Conference on Software Maintenance (ICSM 2006), pp. 145–154 (2006)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Vivien Chinnapongse
    • 1
  • Insup Lee
    • 1
  • Oleg Sokolsky
    • 1
  • Shaohui Wang
    • 1
  • Paul L. Jones
    • 2
  1. 1.University of PennsylvaniaUSA
  2. 2.U.S. Food and Drug AdministrationUSA

Personalised recommendations