Development of an Improved GUI Automation Test System Based on Event-Flow Graph

Abstract

A more automated graphic user interface (GUI) test model, which is based on the event-flow graph, is proposed. In the model, a user interface automation API tool is first used to carry out reverse engineering for a GUI test sample so as to obtain the event-flow graph. Then two approaches are adopted to create GUI test sample cases. That is to say, an improved ant colony optimization (ACO) algorithm is employed to establish a sequence of testing cases in the course of the daily smoke test. The sequence goes through all object event points in the event-flow graph. On the other hand, the spanning tree obtained by deep breadth-first search (BFS) approach is utilized to obtain the testing cases from goal point to outset point in the course of the deep regression test. Finally, these cases are applied to test the new GUI. Moreover, according to the above-mentioned model, a corresponding prototype system based on Microsoft UI automation framework is developed, thus giving a more effective way to improve the GUI automation test in Windows OS.

Share and Cite:

Y. Lu, D. Yan, S. Nie and C. Wang, "Development of an Improved GUI Automation Test System Based on Event-Flow Graph," Journal of Software Engineering and Applications, Vol. 1 No. 1, 2008, pp. 38-43. doi: 10.4236/jsea.2008.11006.

Conflicts of Interest

The authors declare no conflicts of interest.

References

[1] T. Chow, “Testing Software Design Modeled by Finite-State Machines,” IEEE Transactions on Software Engineering, Vol. 4, No. 3, pp. 178-187, May 1978.
[2] L. White and H. Almezen, “Generating test cases for GUI responsibilities using complete interaction sequences,” in Proceedings of the International Symposium on Software Reliability Engineering, San Jose, California, USA, pp. 110-121, October 2000.
[3] A. M. Memon, “An event-flow model of GUI-based applications for testing,” Software Testing, Verification and Reliability, Vol. 17, No. 3, pp. 137-157, September 2007.
[4] L. White, H. Almezen, and N. Alzeidi, “User-based testing of GUI sequences and their interaction,” in Proceedings of the International Symposium on Software Reliability Engineering, Annapolis, Maryland, USA, pp. 54-63, November 2001.
[5] A. M. Memon, M. E. Pollack, and M. L. Soffa, “A planning-based approach to GUI testing,” in Proceedings of The 13th International Software/Internet Quality Week, San. Francisco, California, USA, May 2000.
[6] A. M. Memon, M. E. Pollack, and M. L. Soffa, “Plan Generation for GUI Testing,” in Proceedings of the Fifth International Conference on Artificial Intelligence Planning and Scheduling, Menlo Park, California, USA, pp. 226-235, April 2000.
[7] A. M. Memon, M. E. Pollack, and M. L. Soffa, “Hierarchical GUI test case generation using automated planning,” IEEE Transactions on Software, Vol. 27, No. 2, pp. 144-155, May 2001.
[8] A. M. Memon, M. L. Soffa, and M. E. Pollack, “Coverage criteria for GUI testing,” in Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering, New York, USA, pp. 256-267, September 2001.
[9] Q. Xie and A. M. Memon, “Designing and comparing automated test oracles for GUI-based software applications,” ACM Transactions on Software Engineering and Methodology, Vol. 16, No. 1, pp. 4-es, February 2007.
[10] A. M. Memon, M. E. Pollack, and M. L. Soffa, “Automated test oracles for GUIs,” in Proceedings of the 8th ACM SIGSOFT international symposium on Foundations of software engineering: twenty-first century applications, San Diego, California, USA, pp. 30-39, November 2000.
[11] A. M. Memon, I. Banerjee, and A. Nagarajan, “What test Oracle should I use for effective GUI testing,” in Proceedings of the IEEE International Conference on Automated Software Engineering, Montreal, Quebec, Canada, pp. 164-173, October 2003.
[12] S. McMaster and A. M. Memon, “Call stack coverage for GUI test-suite reduction,” in Proceedings of the 17th IEEE International Symposium on Software Reliability Engineering, Raleigh, North Carolina, USA, pp. 33-44, November 2006.
[13] M. Ye, B.Q. Feng, and Y. Lin, “Neural networks based test cases selection strategy for GUI testing”, in Proceedings of the 6th World Congress on Intelligent Control and Automation, Dalian, China, pp. 5773-5776, June 2006.
[14] L. White, “Regression testing of GUI event interactions,” in Proceedings of the International Conference on Software Maintenance, Monterey, California, USA, pp. 350-358, November 1996.
[15] A. M. Memon and M. L Soffa, “Regression testing of GUIs,” in Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering, New York, USA, pp. 118-127, September 2003.
[16] A. M. Memon, I. Banerjee, and A. Nagarajan, “GUI ripping: reverse Engineering of graphical user interfaces for testing,” in Proceedings of the 10th Working Conference on Reverse Engineering, Victoria, B.C., Canada, pp. 260-269, November 2003.

Copyright © 2024 by authors and Scientific Research Publishing Inc.

Creative Commons License

This work and the related PDF file are licensed under a Creative Commons Attribution 4.0 International License.