当前位置:
X-MOL 学术
›
arXiv.cs.SE
›
论文详情
Our official English website, www.x-mol.net, welcomes your
feedback! (Note: you will need to create a separate account there.)
Erratum: Leveraging Flexible Tree Matching to Repair Broken Locators in Web Automation Scripts
arXiv - CS - Software Engineering Pub Date : 2021-06-09 , DOI: arxiv-2106.04916 Sacha Brisset, Romain Rouvoy, Lionel Seinturier, Renaud Pawlak
arXiv - CS - Software Engineering Pub Date : 2021-06-09 , DOI: arxiv-2106.04916 Sacha Brisset, Romain Rouvoy, Lionel Seinturier, Renaud Pawlak
Web applications are constantly evolving to integrate new features and fix
reported bugs. Even an imperceptible change can sometimes entail significant
modifications of the Document Object Model (DOM), which is the underlying model
used by browsers to render all the elements included in a web application.
Scripts that interact with web applications (e.g. web test scripts, crawlers,
or robotic process automation) rely on this continuously evolving DOM which
means they are often particularly fragile. More precisely, the major cause of
breakages observed in automation scripts are element locators, which are
identifiers used by automation scripts to navigate across the DOM. When the DOM
evolves, these identifiers tend to break, thus causing the related scripts to
no longer locate the intended target elements. For this reason, several
contributions explored the idea of automatically repairing broken locators on a
page. These works attempt to repair a given broken locator by scanning all
elements in the new DOM to find the most similar one. Unfortunately, this
approach fails to scale when the complexity of web pages grows, leading either
to long computation times or incorrect element repairs. This article,
therefore, adopts a different perspective on this problem by introducing a new
locator repair solution that leverages tree matching algorithms to relocate
broken locators. This solution, named Erratum, implements a holistic approach
to reduce the element search space, which greatly eases the locator repair task
and drastically improves repair accuracy. We compare the robustness of Erratum
on a large-scale benchmark composed of realistic and synthetic mutations
applied to popular web applications currently deployed in production. Our
empirical results demonstrate that Erratum outperforms the accuracy of WATER, a
state-of-the-art solution, by 67%.
中文翻译:
勘误:利用灵活的树匹配来修复 Web 自动化脚本中损坏的定位器
Web 应用程序不断发展以集成新功能并修复报告的错误。即使是细微的变化有时也可能需要对文档对象模型 (DOM) 进行重大修改,DOM 是浏览器用来呈现 Web 应用程序中包含的所有元素的底层模型。与 Web 应用程序交互的脚本(例如 Web 测试脚本、爬虫或机器人流程自动化)依赖于这种不断发展的 DOM,这意味着它们通常特别脆弱。更准确地说,自动化脚本中观察到的损坏的主要原因是元素定位器,它们是自动化脚本用来在 DOM 中导航的标识符。当 DOM 演进时,这些标识符往往会被破坏,从而导致相关脚本不再定位到预期的目标元素。为此原因,一些贡献探讨了自动修复页面上损坏的定位器的想法。这些工作试图通过扫描新 DOM 中的所有元素以找到最相似的元素来修复给定的损坏定位器。不幸的是,当网页的复杂性增加时,这种方法无法扩展,导致计算时间过长或元素修复不正确。因此,本文通过引入一种新的定位器修复解决方案来解决这个问题,该解决方案利用树匹配算法重新定位损坏的定位器。这个名为 Erratum 的解决方案实施了一种整体方法来减少元素搜索空间,这大大简化了定位器修复任务并大大提高了修复精度。我们在一个由现实和合成突变组成的大规模基准测试中比较了 Erratum 的稳健性,这些突变应用于当前部署在生产中的流行 Web 应用程序。我们的实证结果表明,勘误表的准确度比最先进的解决方案 WATER 的准确度高 67%。
更新日期:2021-06-10
中文翻译:
勘误:利用灵活的树匹配来修复 Web 自动化脚本中损坏的定位器
Web 应用程序不断发展以集成新功能并修复报告的错误。即使是细微的变化有时也可能需要对文档对象模型 (DOM) 进行重大修改,DOM 是浏览器用来呈现 Web 应用程序中包含的所有元素的底层模型。与 Web 应用程序交互的脚本(例如 Web 测试脚本、爬虫或机器人流程自动化)依赖于这种不断发展的 DOM,这意味着它们通常特别脆弱。更准确地说,自动化脚本中观察到的损坏的主要原因是元素定位器,它们是自动化脚本用来在 DOM 中导航的标识符。当 DOM 演进时,这些标识符往往会被破坏,从而导致相关脚本不再定位到预期的目标元素。为此原因,一些贡献探讨了自动修复页面上损坏的定位器的想法。这些工作试图通过扫描新 DOM 中的所有元素以找到最相似的元素来修复给定的损坏定位器。不幸的是,当网页的复杂性增加时,这种方法无法扩展,导致计算时间过长或元素修复不正确。因此,本文通过引入一种新的定位器修复解决方案来解决这个问题,该解决方案利用树匹配算法重新定位损坏的定位器。这个名为 Erratum 的解决方案实施了一种整体方法来减少元素搜索空间,这大大简化了定位器修复任务并大大提高了修复精度。我们在一个由现实和合成突变组成的大规模基准测试中比较了 Erratum 的稳健性,这些突变应用于当前部署在生产中的流行 Web 应用程序。我们的实证结果表明,勘误表的准确度比最先进的解决方案 WATER 的准确度高 67%。