Ambreen Kousar, Saif Ur Rehman Khan, Atif Mashkoor, Javed Iqbal
{"title":"A Systematic Literature Review on Graphical User Interface Testing Through Software Patterns","authors":"Ambreen Kousar, Saif Ur Rehman Khan, Atif Mashkoor, Javed Iqbal","doi":"10.1049/sfw2/9140693","DOIUrl":null,"url":null,"abstract":"<div>\n <p><b>Context:</b> Graphical user interface (GUI) testing of mobile applications (apps) is significant from a user perspective to ensure that the apps are visually appealing and user-friendly. Pattern-based GUI testing (PBGT) is an innovative model-based testing (MBT) approach designed to enhance user satisfaction and reusability while minimizing the effort required to model and test UIs of mobile apps. In the literature, several primary studies have been conducted in the domain of PBGT.</p>\n <p><b>Problem:</b> The current state-of-the-art lacks comprehensive secondary studies within the PBGT domain. To our knowledge, this area has insufficient focus on in-depth research. Consequently, numerous challenges and limitations persist in the existing literature.</p>\n <p><b>Objective:</b> This study aims to fill the gaps mentioned above in the existing body of knowledge. We highlight popular research topics and analyze their relationships. We explore current state-of-the-art approaches and techniques, a taxonomy of tools and modeling languages, a list of reported UI test patterns (UITPs), and a taxonomy of writing UITPs. We also highlight practical challenges, limitations, and gaps in the targeted research area. Furthermore, the current study intends to highlight future research directions in this domain.</p>\n <p><b>Method:</b> We conducted a systematic literature review (SLR) on PBGT in the context of Android and web apps. A hybrid methodology that combines the Kitchenham and PRISMA guidelines is adopted to achieve the targeted research objectives (ROs). We perform a keyword-based search on well-known databases and select 30 (out of 557) studies.</p>\n <p><b>Results:</b> The current study identifies 11 tools used in PBGT and devises a taxonomy to categorize these tools. A taxonomy for writing UITPs has also been developed. In addition, we outline the limitations of the targeted research domain and future directions.</p>\n <p><b>Conclusion:</b> This study benefits the community and readers by better understanding the targeted research area. A comprehensive knowledge of existing tools, techniques, and methodologies is helpful for practitioners. Moreover, the identified limitations, gaps, emerging trends, and future research directions will benefit researchers who intend to work further in future research.</p>\n </div>","PeriodicalId":50378,"journal":{"name":"IET Software","volume":"2025 1","pages":""},"PeriodicalIF":1.5000,"publicationDate":"2025-04-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://onlinelibrary.wiley.com/doi/epdf/10.1049/sfw2/9140693","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"IET Software","FirstCategoryId":"94","ListUrlMain":"https://onlinelibrary.wiley.com/doi/10.1049/sfw2/9140693","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0
Abstract
Context: Graphical user interface (GUI) testing of mobile applications (apps) is significant from a user perspective to ensure that the apps are visually appealing and user-friendly. Pattern-based GUI testing (PBGT) is an innovative model-based testing (MBT) approach designed to enhance user satisfaction and reusability while minimizing the effort required to model and test UIs of mobile apps. In the literature, several primary studies have been conducted in the domain of PBGT.
Problem: The current state-of-the-art lacks comprehensive secondary studies within the PBGT domain. To our knowledge, this area has insufficient focus on in-depth research. Consequently, numerous challenges and limitations persist in the existing literature.
Objective: This study aims to fill the gaps mentioned above in the existing body of knowledge. We highlight popular research topics and analyze their relationships. We explore current state-of-the-art approaches and techniques, a taxonomy of tools and modeling languages, a list of reported UI test patterns (UITPs), and a taxonomy of writing UITPs. We also highlight practical challenges, limitations, and gaps in the targeted research area. Furthermore, the current study intends to highlight future research directions in this domain.
Method: We conducted a systematic literature review (SLR) on PBGT in the context of Android and web apps. A hybrid methodology that combines the Kitchenham and PRISMA guidelines is adopted to achieve the targeted research objectives (ROs). We perform a keyword-based search on well-known databases and select 30 (out of 557) studies.
Results: The current study identifies 11 tools used in PBGT and devises a taxonomy to categorize these tools. A taxonomy for writing UITPs has also been developed. In addition, we outline the limitations of the targeted research domain and future directions.
Conclusion: This study benefits the community and readers by better understanding the targeted research area. A comprehensive knowledge of existing tools, techniques, and methodologies is helpful for practitioners. Moreover, the identified limitations, gaps, emerging trends, and future research directions will benefit researchers who intend to work further in future research.
期刊介绍:
IET Software publishes papers on all aspects of the software lifecycle, including design, development, implementation and maintenance. The focus of the journal is on the methods used to develop and maintain software, and their practical application.
Authors are especially encouraged to submit papers on the following topics, although papers on all aspects of software engineering are welcome:
Software and systems requirements engineering
Formal methods, design methods, practice and experience
Software architecture, aspect and object orientation, reuse and re-engineering
Testing, verification and validation techniques
Software dependability and measurement
Human systems engineering and human-computer interaction
Knowledge engineering; expert and knowledge-based systems, intelligent agents
Information systems engineering
Application of software engineering in industry and commerce
Software engineering technology transfer
Management of software development
Theoretical aspects of software development
Machine learning
Big data and big code
Cloud computing
Current Special Issue. Call for papers:
Knowledge Discovery for Software Development - https://digital-library.theiet.org/files/IET_SEN_CFP_KDSD.pdf
Big Data Analytics for Sustainable Software Development - https://digital-library.theiet.org/files/IET_SEN_CFP_BDASSD.pdf