Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3460319.3464800acmconferencesArticle/Chapter ViewAbstractPublication PagesisstaConference Proceedingsconference-collections
research-article
Public Access

WebEvo: taming web application evolution via detecting semantic structure changes

Published: 11 July 2021 Publication History

Abstract

The development of Web technology and the beginning of the Big Data era have led to the development of technologies for extracting data from websites, such as information retrieval (IR) and robotic process automation (RPA) tools. As websites are constantly evolving, to prevent these tools from functioning improperly due to website evolution, it is important to monitor the changes in websites and report them to the developers and testers. Existing monitoring tools mainly use DOM-tree based techniques to detect changes in the new web pages. However, these monitoring tools incorrectly report content-based changes (i.e., web content refreshed every time a web page is retrieved) as the changes that will adversely affect the performance of the IR and RPA tools. This results in false warnings since the IR and RPA tools typically consider these changes as expected and retrieve dynamic data from them. Moreover, these monitoring tools cannot identify GUI widget evolution (e.g., moving a button), and thus cannot help the IR and RPA tools adapt to the evolved widgets (e.g., automatic repair of locators for the evolved widgets). To address the limitations of the existing monitoring tools, we propose an approach, WebEvo, that leverages historic pages to identify the DOM elements whose changes are content-based changes, which can be safely ignored when reporting changes in the new web pages. Furthermore, to identify refactoring changes that preserve semantics and appearances of GUI widgets, WebEvo adapts computer vision (CV) techniques to identify the mappings of the GUI widgets from the old web page to the new web page on an element-by-element basis. Empirical evaluations on 13 real-world websites from 9 popular categories demonstrate the superiority of WebEvo over the existing DOM-tree based detection or whole-page visual comparison in terms of both effectiveness and efficiency.

References

[1]
2020. IBM Robotic Process Automation as a Service with WDG Automation. https://www.ibm.com/products/robotic-process-automation.
[2]
2020. Most Popular Types of Websites. https://www.hostgator.com/blog/popular-types-websites-create/.
[3]
2020. Most Popular Types of Websites. https://www.websitebuilderexpert.com/designing-websites/types-of-websites/.
[4]
2020. Most Popular Types of Websites. http://www.webyurt.com/popular-types-of-websites.
[5]
2020. Poor Sales? Maybe You Need a Website Redesign: Here’s How. https://www.crazyegg.com/blog/website-redesign-tips/.
[6]
2020. Selenium. https://www.selenium.dev/.
[7]
2020. Wayback Machine. https://archive.org/web/.
[8]
2020. Why redesigns don’t make users happy. https://uxplanet.org/why-redesigns-dont-make-users-happy-f1b29cc940ce.
[9]
2021. Chrome Driver. https://chromedriver.chromium.org/downloads.
[10]
2021. GoFullPage. https://gofullpage.com/.
[11]
Palakorn Achananuparp, Xiaohua Hu, and Xiajiong Shen. 2008. The evaluation of sentence similarity measures. In Proceedings of the International Conference on Data Warehousing and Knowledge Discovery (DaWaK). 305–316. https://doi.org/10.1007/978-3-540-85836-2_29
[12]
Abdulmajeed Alameer, Paul Chiou, and William G.J. Halfond. 2019. Efficiently Repairing Internationalization Presentation Failures by Solving Layout Constraints. In Proceedings of the IEEE International Conference on Software Testing, Verification, and Validation (ICST). 172–182. https://doi.org/10.1109/ICST.2019.00026
[13]
Kevin Borgolte, Christopher Kruegel, and Giovanni Vigna. 2014. Relevant change detection: a framework for the precise extraction of modified and novel web-based content as a filtering technique for analysis engines. In Proceedings of the International Conference on World Wide Web (WWW). 595–598. https://doi.org/10.1145/2567948.2578039
[14]
Matthew Browne and Saeed Shiry Ghidary. 2003. Convolutional Neural Networks for Image Processing: An Application in Robot Vision. 641–652. https://doi.org/10.1007/978-3-540-24581-0_55
[15]
Tsung-Hsiang Chang, Tom Yeh, and Robert C. Miller. 2010. GUI testing using computer vision. In Proceedings of the International Conference on Human Factors in Computing Systems (CHI). 1535–1544. https://doi.org/10.1145/1753326.1753555
[16]
Shauvik Roy Choudhary, Mukul R. Prasad, and Alessandro Orso. 2014. X-PERT: a web application testing tool for cross-browser inconsistency detection. In Proceedings of the International Symposium on Software Testing and Analysis (ISSTA). 417–420. https://doi.org/10.1145/2610384.2628057
[17]
Shauvik Roy Choudhary, Husayn Versee, and Alessandro Orso. 2010. WEBDIFF: Automated identification of cross-browser issues in web applications. In Proceedings of the IEEE International Conference on Software Maintenance (ICSM). 1–10. https://doi.org/10.1109/ICSM.2010.5609723
[18]
Shauvik Roy Choudhary, Dan Zhao, Husayn Versee, and Alessandro Orso. 2011. WATER: Web Application TEst Repair. In Proceedings of the First International Workshop on End-to-End Test Script Engineering (ETSE). 24–29. https://doi.org/10.1145/2002931.2002935
[19]
1998. WordNet An Electronic Lexical Database, Christiane Fellbaum (Ed.). MIT Press. https://doi.org/10.1017/S0142716401221079
[20]
Sergio Flesca, Filippo Furfaro, and Elio Masciari. 2001. Monitoring Web information changes. In Proceedings of the International Conference on Information Technology: Coding and Computing (ITCC). 421–425. https://doi.org/10.1109/ITCC.2001.918833
[21]
Ian J. Goodfellow, Yoshua Bengio, and Aaron C. Courville. 2016. Deep Learning. MIT Press. https://doi.org/10.1007/s10710-017-9314-z
[22]
Mouna Hammoudi, Gregg Rothermel, and Andrea Stocco. 2016. WATERFALL: an incremental approach for repairing record-replay tests of web applications. In Proceedings of the ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE). 751–762. https://doi.org/10.1145/2950290.2950294
[23]
Wei Jiang, Guihua Er, Qionghai Dai, and Jinwei Gu. 2006. Similarity-based online feature selection in content-based image retrieval. IEEE Transactions on Image Processing (TIP), 15, 3 (2006), 702–712. https://doi.org/10.1109/TIP.2005.863105
[24]
HP Khandagale and PP Halkarnikar. 2010. A novel approach for web page change detection system. International Journal of Computer Theory and Engineering (IJCTE), 2, 3 (2010), 364–368. https://doi.org/10.7763/IJCTE.2010.V2.168
[25]
Yann LeCun, Yoshua Bengio, and Geoffrey Hinton. 2015. Deep learning. Nature, 521, 7553 (2015), 436–444. https://doi.org/10.1038/nature14539
[26]
Yuhua Li, David McLean, Zuhair A Bandar, James D O’shea, and Keeley Crockett. 2006. Sentence similarity based on semantic nets and corpus statistics. IEEE transactions on knowledge and data engineering (TKDE), 18, 8 (2006), 1138–1150. https://doi.org/10.1109/TKDE.2006.130
[27]
Fuhui Long, Hongjiang Zhang, and David Dagan Feng. 2003. Fundamentals of Content-Based Image Retrieval. Springer Berlin Heidelberg, 1–26. isbn:978-3-662-05300-3 https://doi.org/10.1007/978-3-662-05300-3_1
[28]
David G. Lowe. 1999. Object Recognition from Local Scale-Invariant Features. In Proceedings of the International Conference on Computer Vision (ICCV). 1150–1157. https://doi.org/10.1109/ICCV.1999.790410
[29]
David G. Lowe. 2004. Distinctive Image Features from Scale-Invariant Keypoints. International Journal of Computer Vision (IJCV), 60, 2 (2004), 91–110. https://doi.org/10.1023/B:VISI.0000029664.99615.94
[30]
Sonal Mahajan, Negarsadat Abolhasani, Phil McMinn, and William G.J. Halfond. 2018. Automated Repair of Mobile Friendly Problems in Web Pages. In Proceedings of the International Conference on Software Engineering (ICSE). 140–150. https://doi.org/10.1145/3180155.3180262
[31]
Sonal Mahajan, Abdulmajeed Alameer, Phil McMinn, and William G.J. Halfond. 2017. Automated Repair of Layout Cross Browser Issues Using Search-Based Techniques. In Proceedings of the International Symposium on Software Testing and Analysis (ISSTA). 249–260. https://doi.org/10.1145/3092703.3092726
[32]
Sonal Mahajan, Abdulmajeed Alameer, Phil McMinn, and William G.J. Halfond. 2018. Automated Repair of Internationalization Failures Using Style Similarity Clustering and Search-Based Techniques. In Proceedings of the International Conference on Software Testing, Validation and Verification (ICST). 215–226. https://doi.org/10.1109/ICST.2018.00030
[33]
Tuan A. Nguyen and Christoph Csallner. 2015. Reverse engineering mobile application user interfaces with REMAUI. In Proceedings of the International Conference on Automated Software Engineering (ASE). 248–259. https://doi.org/10.1109/ASE.2015.32
[34]
Pavel Panchekha, Adam T. Geller, Michael D. Ernst, Zachary Tatlock, and Shoaib Kamil. 2018. Verifying That Web Pages Have Accessible Layout. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI). 1–14. https://doi.org/10.1145/3192366.3192407
[35]
Pavel Panchekha and Emina Torlak. 2016. Automated reasoning for web page layout. In Proceedings of the ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications, (OOPSLA). 181–194. https://doi.org/10.1145/2983990.2984010
[36]
Rahul Pandita, Xusheng Xiao, Hao Zhong, Tao Xie, Stephen Oney, and Amit Paradkar. 2012. Inferring Method Specifications from Natural Language API Descriptions. In Proceedings of the International Conference on Software Engineering (ICSE). 815–825. https://doi.org/10.1109/ICSE.2012.6227137
[37]
Eric Sven Ristad and Peter N Yianilos. 1998. Learning string-edit distance. IEEE Transactions on Pattern Analysis and Machine Intelligence (PAMI), 20, 5 (1998), 522–532. https://doi.org/10.1109/34.682181
[38]
Edward Rosten, Reid B. Porter, and Tom Drummond. 2010. Faster and Better: A Machine Learning Approach to Corner Detection. IEEE Transactions on Pattern Analysis and Machine Intelligence (PAMI), 32, 1 (2010), 105–119. https://doi.org/10.1109/TPAMI.2008.275
[39]
Fei Shao and Xusheng Xiao. 2021. WebEvo Project Website. https://github.com/webevoexp/webevo.
[40]
John Slankas, Xusheng Xiao, Laurie A. Williams, and Tao Xie. 2014. Relation extraction for inferring access control rules from natural language artifacts. In Proceedings of the Annual Computer Security Applications Conference (ACSAC). 366–375. https://doi.org/10.1145/2664243.2664280
[41]
Andrea Stocco, Rahulkrishna Yandrapally, and Ali Mesbah. 2018. Visual Web Test Repair. In Proceedings of the ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE 2018). 503–514. https://doi.org/10.1145/3236024.3236063
[42]
OpenCV team. 2017. OpenCV. http://opencv.org/.
[43]
AIMDek Technologies. 2019. Robotic Process Automation. https://medium.com/@AIMDekTech/evolution-of-robotic-process-automation-the-path-to-cognitive-rpa-c3bd52c8b865.
[44]
UiPath. 2020. UiPath: Robotic Process Automation. https://www.uipath.com/rpa/robotic-process-automation.
[45]
w3c. 2017. XML Path Language (XPath). https://www.w3.org/TR/2017/REC-xpath-31-20170321/.
[46]
w3c. 2020. Cascading Style Sheets. https://www.w3.org/Style/CSS/.
[47]
Shengqu Xi, Shao Yang, Xusheng Xiao, Yuan Yao, Yayuan Xiong, Fengyuan Xu, Haoyu Wang, Peng Gao, Zhuotao Liu, Feng Xu, and Jian Lu. 2019. DeepIntent: Deep Icon-Behavior Learning for Detecting Intention-Behavior Discrepancy in Mobile Apps. In Proceedings of the ACM SIGSAC Conference on Computer and Communications Security (CCS). 2421–2436. https://doi.org/10.1145/3319535.3363193
[48]
Xusheng Xiao, Amit Paradkar, Suresh Thummalapenta, and Tao Xie. 2012. Automated extraction of security policies from natural-language software documents. In Proceedings of the International Symposium on the Foundations of Software Engineering (FSE). 12. https://doi.org/10.1145/2393596.2393608
[49]
Xusheng Xiao, Xiaoyin Wang, Zhihao Cao, Hanlin Wang, and Peng Gao. 2019. IconIntent: Automatic Identification of Sensitive UI Widgets based on Icon Classification for Android Apps. In Proceedings of the International Conference on Software Engineering (ICSE). 257–268. https://doi.org/10.1109/ICSE.2019.00041
[50]
Tom Yeh, Tsung-Hsiang Chang, and Robert C. Miller. 2009. Sikuli: using GUI screenshots for search and automation. In Proceedings of the Annual ACM Symposium on User Interface Software and Technology (UIST). 183–192. https://doi.org/10.1145/1622176.1622213

Cited By

View all
  • (2024)Neat: Mobile App Layout Similarity Comparison Based on Graph Convolutional NetworksCompanion Proceedings of the 32nd ACM International Conference on the Foundations of Software Engineering10.1145/3663529.3663832(104-114)Online publication date: 10-Jul-2024
  • (2024)Delta GUI change detection using inferred modelsComputer Standards & Interfaces10.1016/j.csi.2024.103925(103925)Online publication date: Sep-2024
  • (2023)Application Analysis of Computer Technology in Cross-Border E-Commerce Environment2023 2nd International Conference for Innovation in Technology (INOCON)10.1109/INOCON57975.2023.10101374(1-6)Online publication date: 3-Mar-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ISSTA 2021: Proceedings of the 30th ACM SIGSOFT International Symposium on Software Testing and Analysis
July 2021
685 pages
ISBN:9781450384599
DOI:10.1145/3460319
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 11 July 2021

Permissions

Request permissions for this article.

Check for updates

Badges

Author Tags

  1. Computer Vision
  2. DOM-Tree Analysis
  3. Web Application Evolution

Qualifiers

  • Research-article

Funding Sources

Conference

ISSTA '21
Sponsor:

Acceptance Rates

Overall Acceptance Rate 58 of 213 submissions, 27%

Upcoming Conference

ISSTA '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)136
  • Downloads (Last 6 weeks)27
Reflects downloads up to 04 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Neat: Mobile App Layout Similarity Comparison Based on Graph Convolutional NetworksCompanion Proceedings of the 32nd ACM International Conference on the Foundations of Software Engineering10.1145/3663529.3663832(104-114)Online publication date: 10-Jul-2024
  • (2024)Delta GUI change detection using inferred modelsComputer Standards & Interfaces10.1016/j.csi.2024.103925(103925)Online publication date: Sep-2024
  • (2023)Application Analysis of Computer Technology in Cross-Border E-Commerce Environment2023 2nd International Conference for Innovation in Technology (INOCON)10.1109/INOCON57975.2023.10101374(1-6)Online publication date: 3-Mar-2023
  • (2023)Vision-Based Widget Mapping for Test Migration across Mobile Platforms: Are We There Yet?Proceedings of the 38th IEEE/ACM International Conference on Automated Software Engineering10.1109/ASE56229.2023.00068(1416-1428)Online publication date: 11-Nov-2023
  • (2023)Automated Fixing of Web UI Tests via Iterative Element Matching2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE)10.1109/ASE56229.2023.00048(1188-1199)Online publication date: 11-Sep-2023

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media