DBInputs: Exploiting Persistent Data to Improve Automated GUI Testing

IF 6.5 1区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING IEEE Transactions on Software Engineering Pub Date : 2024-08-06 DOI:10.1109/TSE.2024.3439002
Diego Clerissi;Giovanni Denaro;Marco Mobilio;Leonardo Mariani
{"title":"DBInputs: Exploiting Persistent Data to Improve Automated GUI Testing","authors":"Diego Clerissi;Giovanni Denaro;Marco Mobilio;Leonardo Mariani","doi":"10.1109/TSE.2024.3439002","DOIUrl":null,"url":null,"abstract":"The generation of syntactically and semantically valid input data, able to exercise functionalities imposing constraints on the validity of the inputs, is a key challenge in automatic GUI (Graphical User Interface) testing. Existing test case generation techniques often rely on manually curated catalogs of values, although they might require significant effort to be created and maintained, and could hardly scale to applications with several input forms. Alternatively, it is possible to extract values from external data sources, such as the Web or publicly available knowledge bases. However, external sources are unlikely to provide the domain-specific and application-specific data that are often required to thoroughly exercise applications. This paper proposes \n<sc>DBInputs</small>\n, a novel approach that automatically identifies domain-specific and application-specific inputs to effectively fulfill the validity constraints present in the tested GUI screens. The approach exploits syntactic and semantic similarities between the identifiers of the input fields shown on GUI screens and those of the tables of the target GUI application database, and extracts valid inputs from such database, automatically resolving the mismatch between the user interface and the database schema. \n<sc>DBInputs</small>\n can properly cope with system testing and maintenance testing efforts, since databases are naturally and inexpensively available in those phases. Our experiments with 4 Web applications and 11 Mobile apps provide evidence that \n<sc>DBInputs</small>\n can outperform techniques like random input selection and \n<sc>Link</small>\n, a competing approach for searching inputs from knowledge bases, in both Web and Mobile domains.","PeriodicalId":13324,"journal":{"name":"IEEE Transactions on Software Engineering","volume":"50 9","pages":"2412-2436"},"PeriodicalIF":6.5000,"publicationDate":"2024-08-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10624678","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"IEEE Transactions on Software Engineering","FirstCategoryId":"94","ListUrlMain":"https://ieeexplore.ieee.org/document/10624678/","RegionNum":1,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0

Abstract

The generation of syntactically and semantically valid input data, able to exercise functionalities imposing constraints on the validity of the inputs, is a key challenge in automatic GUI (Graphical User Interface) testing. Existing test case generation techniques often rely on manually curated catalogs of values, although they might require significant effort to be created and maintained, and could hardly scale to applications with several input forms. Alternatively, it is possible to extract values from external data sources, such as the Web or publicly available knowledge bases. However, external sources are unlikely to provide the domain-specific and application-specific data that are often required to thoroughly exercise applications. This paper proposes DBInputs , a novel approach that automatically identifies domain-specific and application-specific inputs to effectively fulfill the validity constraints present in the tested GUI screens. The approach exploits syntactic and semantic similarities between the identifiers of the input fields shown on GUI screens and those of the tables of the target GUI application database, and extracts valid inputs from such database, automatically resolving the mismatch between the user interface and the database schema. DBInputs can properly cope with system testing and maintenance testing efforts, since databases are naturally and inexpensively available in those phases. Our experiments with 4 Web applications and 11 Mobile apps provide evidence that DBInputs can outperform techniques like random input selection and Link , a competing approach for searching inputs from knowledge bases, in both Web and Mobile domains.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
DBINPUTS:利用持久性数据改进图形用户界面自动测试
生成在语法和语义上有效的输入数据,使其能够执行对输入有效性施加限制的功能,是图形用户界面(GUI)自动测试的一个关键挑战。现有的测试用例生成技术通常依赖于人工编辑的值目录,但这些目录的创建和维护可能需要大量的人力物力,而且很难扩展到具有多种输入形式的应用程序。另外,也可以从外部数据源(如网络或公开可用的知识库)中提取值。然而,外部数据源不太可能提供特定领域和特定应用的数据,而这些数据往往是彻底演练应用程序所必需的。本文提出的 DBInputs 是一种新颖的方法,它能自动识别特定领域和特定应用的输入,以有效满足测试的图形用户界面屏幕中存在的有效性约束。该方法利用图形用户界面屏幕上显示的输入字段标识符与目标图形用户界面应用程序数据库表标识符之间在语法和语义上的相似性,从数据库中提取有效输入,自动解决用户界面与数据库模式之间的不匹配问题。DBInputs 可以很好地应对系统测试和维护测试工作,因为在这些阶段,数据库是天然的、廉价的。我们在 4 个网络应用程序和 11 个移动应用中进行的实验证明,在网络和移动领域,DBInputs 的性能都优于随机输入选择和 Link(一种从知识库中搜索输入的竞争方法)等技术。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering 工程技术-工程:电子与电气
CiteScore
9.70
自引率
10.80%
发文量
724
审稿时长
6 months
期刊介绍: IEEE Transactions on Software Engineering seeks contributions comprising well-defined theoretical results and empirical studies with potential impacts on software construction, analysis, or management. The scope of this Transactions extends from fundamental mechanisms to the development of principles and their application in specific environments. Specific topic areas include: a) Development and maintenance methods and models: Techniques and principles for specifying, designing, and implementing software systems, encompassing notations and process models. b) Assessment methods: Software tests, validation, reliability models, test and diagnosis procedures, software redundancy, design for error control, and measurements and evaluation of process and product aspects. c) Software project management: Productivity factors, cost models, schedule and organizational issues, and standards. d) Tools and environments: Specific tools, integrated tool environments, associated architectures, databases, and parallel and distributed processing issues. e) System issues: Hardware-software trade-offs. f) State-of-the-art surveys: Syntheses and comprehensive reviews of the historical development within specific areas of interest.
期刊最新文献
Line-Level Defect Prediction by Capturing Code Contexts with Graph Convolutional Networks Does Treatment Adherence Impact Experiment Results in TDD? Scoping Software Engineering for AI: The TSE Perspective A context-aware clustering approach for assisting operators in classifying security alerts StagedVulBERT: Multi-Granular Vulnerability Detection with a Novel Pre-trained Code Model
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1