Abstract
A large body of academic knowledge has been devoted to automated software testing in order to support the software market’s demands for continuous software delivery. However, most of these automated techniques approach testing from lower levels of system abstraction, e.g., component level, which limit their applicability for high-level regression testing of, for instance, system and acceptance tests, thus forcing companies to perform these test activities manually, which is considered time consuming, tedious, and error prone.
In this book chapter, we present visual GUI testing (VGT), a tool driven test technique that uses image recognition in order to interact and assert the correctness of a system under test (SUT) through the bitmap graphical user interface (GUI) that is shown to the user on the computer monitor. This approach makes VGT flexible and applicable to any SUT with a GUI but also allows VGT tools to emulate end-user behavior and therefore automate previously manual system and acceptance test cases. In addition to presenting the technique itself, this chapter will also present some VGT tools and empirically identified problems with the technique and how these problems can be mitigated in practice. Finally we will discuss how VGT can be used in the context of continuous software development in order to support market demands for quicker software delivery.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Even though the general idea has been around for long, it has only been made possible through recent advances in computer power.
- 2.
An additional complication is that not all requirements might have been (correctly) elicited, i.e., might not properly represent the actual needs of the users; however, in the following, we do not go further into this distinction.
- 3.
More information available at www.sikuli.org.
- 4.
More information available at www.jautomate.com.
References
Olsson, H.H., Alahyari, H., Bosch, J.: Climbing the “stairway to heaven” – a multiple-case study exploring barriers in the transition from agile development towards continuous deployment of software. In: 2012 38th EUROMICRO Conference on Software Engineering and Advanced Applications (SEAA), pp. 392–399. EUROMICRO, IEEE (2012)
Olan, M.: Unit testing: test early, test often. J. Comput. Sci. Coll. 19(2), 319–328 (2003)
Berner, S., Weber, R., Keller, R.: Observations and lessons learned from automated testing. In: Proceedings of the 27th International Conference on Software Engineering, pp. 571–579. ICSE, ACM (2005)
Grechanik, M., Xie, Q., Fu, C.: Creating GUI testing tools using accessibility technologies. In: International Conference on Software Testing, Verification and Validation Workshops, 2009. ICSTW’09, pp. 243–250. ICST, IEEE (2009)
Börjesson, E., Feldt, R.: Automated system testing using visual GUI testing tools: A comparative study in industry. In: 2012 I.E. Fifth International Conference on Software Testing, Verification and Validation (ICST), pp. 350–359. ICST, IEEE (2012)
Alegroth, E., Feldt, R., Olsson, H.: Transitioning manual system test suites to automated testing: An industrial case study. In: 2013 I.E. Sixth International Conference on Software Testing, Verification and Validation (ICST), pp. 56–65. ICST, IEEE (2013)
Alegroth, E., Nass, M., Olsson, H.: JAutomate: A tool for system-and acceptance-test automation. In: 2013 I.E. Sixth International Conference on Software Testing, Verification and Validation (ICST), pp. 439–446. ICST, IEEE (2013)
Alégroth, E., Feldt, R., Ryrholm, L.: Visual GUI testing in practice: challenges, problems and limitations. Empir. Softw. Eng. 1–51. Springer US (2014)
Humble, J., Farley, D.: Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation. Book, Pearson Education (2010)
Itkonen, J., Rautiainen, K.: Exploratory testing: A multiple case study. In: 2005 International Symposium on Empirical Software Engineering, 10 pp. (Nov 2005)
Dustin, E., Rashka, J., Paul, J.: Automated Software Testing: Introduction, Management, and Performance. Book, Addison-Wesley Professional (1999)
Memon, A.M., Pollack, M.E., Soffa, M.L.: Automated test oracles for GUIs. In: ACM SIGSOFT Software Engineering Notes, vol. 25, pp. 30–39. ACM (2000)
Memon, A.: An event-flow model of GUI-based applications for testing. Softw. Test. Verif. Rel. 17(3), 137–157 (2007)
Potter, R.: In: Triggers: GUIding Automation with Pixels to Achieve Data Access, pp. 361–382. Center for automation research, University of Maryland (1992)
Yeh, T., Chang, T., Miller, R.: Sikuli: Using GUI screenshots for search and automation. In: Proceedings of the 22nd Annual ACM Symposium on User Interface Software and Technology, pp. 183–192. ACM symposium of UI software and technology, ACM (2009)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Alégroth, E., Feldt, R. (2014). Industrial Application of Visual GUI Testing: Lessons Learned. In: Bosch, J. (eds) Continuous Software Engineering. Springer, Cham. https://doi.org/10.1007/978-3-319-11283-1_11
Download citation
DOI: https://doi.org/10.1007/978-3-319-11283-1_11
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-11282-4
Online ISBN: 978-3-319-11283-1
eBook Packages: Computer ScienceComputer Science (R0)