Abstract
Software testing is an important part of engineering trustworthy information systems. End-to-end testing through Graphical User Interface (GUI) can be done manually, but it is a very time consuming and costly process. There are tools to capture or manually define scripts for automating regression testing through a GUI, but the main challenge is the high maintenance cost of the scripts when the GUI changes. In addition, GUIs tend to have a large state space, so creating scripts to cover all the possible paths and defining test oracles to check all the elements of all the states would be an enormous effort. This paper presents an approach to automatically explore a GUI while inferring state models that are used for action selection in run-time GUI test generation, implemented as an extension to the open source TESTAR tool. As an initial validation, we experiment on the impact of using various state abstraction mechanisms on the model inference and the performance of the implemented action selection algorithm based on the inferred model. Later, we analyse the challenges and provide future research directions on model inference and scriptless GUI testing.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
JaCoCo coverage tool. https://www.jacoco.org/jacoco/. Accessed 17 Jan 2022
Rachota Timetracker. http://rachota.sourceforge.net. Accessed 17 Jan 2022
Aho, P., Alégroth, E., Oliveira, R.A., Vos, T.E.: Evolution of automated regression testing of software systems through the graphical user interface. In: 1st International Conference on Advances in Computation, Communications and Services, pp. 16–21 (2016)
Aho, P., Kanstrén, T., Räty, T., Röning, J.: Automated extraction of GUI models for testing. In: Advances in Computers, vol. 95, pp. 49–112. Elsevier (2014)
Aho, P., Räty, T., Menz, N.: Dynamic reverse engineering of GUI models for testing. In: 2013 International Conference on Control, Decision and Information Technologies (CoDIT), pp. 441–447 (2013)
Aho, P., Suarez, M., Kanstren, T., Memon, A.M.: Murphy tools: utilizing extracted GUI models for industrial software testing. In: 7th ICSTW, pp. 343–348 (2014)
Aho, P., Suarez, M., Memon, A., Kanstrén, T.: Making GUI testing practical: bridging the gaps. In: 2015 12th International Conference on Information Technology-New Generations, pp. 439–444. IEEE (2015)
Amalfitano, D., Fasolino, A.R., Tramontana, P., Amatucci, N.: Considering context events in event-based testing of mobile applications. In: 6th ICSTW, pp. 126–133 (2013)
Arcuri, A., Briand, L.: A practical guide for using statistical tests to assess randomized algorithms in software engineering. In: 33rd ICSE, pp. 1–10. ACM (2011)
van der Brugge, A., Ricos, F.P., Aho, P., Marín, B., Vos, T.E.: Evaluating TESTAR’s effectiveness through code coverage. In: Abrahão Gonzales, S. (ed.) XXV JISBD. SISTEDES (2021)
Canny, A., Palanque, P., Navarre, D.: Model-based testing of GUI applications featuring dynamic instanciation of widgets. In: 2020 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW), pp. 95–104 (2020). https://doi.org/10.1109/ICSTW50294.2020.00029
Couto, R., Ribeiro, A.N., Campos, J.C.: A patterns based reverse engineering approach for Java source code. In: 35th IEEE Software Engineering Workshop, pp. 140–147 (2012)
de Gier, F., Kager, D., de Gouw, S., Tanja Vos, E.: Offline oracles for accessibility evaluation with the TESTAR tool. In: 13th RCIS, pp. 1–12 (2019)
Grechanik, M., Xie, Q., Fu, C.: Creating GUI testing tools using accessibility technologies. In: 2009 International Conference on Software Testing, Verification, and Validation Workshops, pp. 243–250. IEEE (2009)
Grilo, A.M., Paiva, A.C., Faria, J.P.: Reverse engineering of GUI models for testing. In: 5th ICIST, pp. 1–6. IEEE (2010)
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). https://doi.org/10.1007/11759744_2
Kull, A.: Automatic GUI model generation: state of the art. In: 2012 IEEE 23rd ISSRE Workshops, pp. 207–212. IEEE (2012)
Marchetto, A., Tonella, P., Ricca, F.: State-based testing of Ajax web applications. In: 2008 1st ICST, pp. 121–130 (2008)
Meinke, K., Walkinshaw, N.: Model-based testing and model inference. In: Margaria, T., Steffen, B. (eds.) ISoLA 2012. LNCS, vol. 7609, pp. 440–443. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-34026-0_32
Memon, A.M., Banerjee, I., Nagarajan, A.: GUI ripping: reverse engineering of graphical user interfaces for testing. In: 10th WCRE, pp. 260–269 (2003)
Mesbah, A., van Deursen, A., Lenselink, S.: Crawling Ajax-based web applications through dynamic analysis of user interface state changes. ACM Trans. Web 6(1), 1–30 (2012)
Miao, Y., Yang, X.: An FSM based GUI test automation model. In: 11th International Conference on Control Automation Robotics Vision, pp. 120–126 (2010)
Nedyalkova, S., Bernardino, J.: Open source capture and replay tools comparison. In: Proceedings of the International C* Conference on Computer Science and Software Engineering, pp. 117–119 (2013)
Nguyen, B.N., Robbins, B., Banerjee, I., Memon, A.: GUITAR: an innovative tool for automated testing of GUI-driven software. Autom. Softw. Eng. 21(1), 65–105 (2013). https://doi.org/10.1007/s10515-013-0128-9
Rafi, D.M., Moses, K.R.K., Petersen, K., Mäntylä, M.V.: Benefits and limitations of automated software testing: systematic literature review and practitioner survey. In: 2012 7th International Workshop on Automation of Software Test (AST), pp. 36–42. IEEE (2012)
Silva, J.A.C., Silva, C., Gonçalo, R.D., Saraiva, J.A., Campos, J.C.: The GUISurfer tool: towards a language independent approach to reverse engineering GUI code. In: Proceedings of the 2nd ACM SIGCHI Symposium on Engineering Interactive Computing Systems, pp. 181–186. ACM (2010)
Vos, T.E.J., Aho, P., Pastor Ricos, F., Rodriguez-Valdes, O., Mulders, A.: TESTAR - scriptless testing through graphical user interface. STVR 31(3), e1771 (2021)
Acknowledgements
This work has been funded by ITEA3 TESTOMAT and IVVES, and H2020 DECODER and iv4XR projects. Thanks to: Arjan Hommerson, Stijn de Gouw, Stefano Schivo.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Mulders, A., Valdes, O.R., Ricós, F.P., Aho, P., Marín, B., Vos, T.E.J. (2022). State Model Inference Through the GUI Using Run-Time Test Generation. In: Guizzardi, R., Ralyté, J., Franch, X. (eds) Research Challenges in Information Science. RCIS 2022. Lecture Notes in Business Information Processing, vol 446. Springer, Cham. https://doi.org/10.1007/978-3-031-05760-1_32
Download citation
DOI: https://doi.org/10.1007/978-3-031-05760-1_32
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-05759-5
Online ISBN: 978-3-031-05760-1
eBook Packages: Computer ScienceComputer Science (R0)