Robula+: An algorithm for generating robust XPath locators for web testing

Maurizio Leotta, Andrea Stocco, Filippo Ricca, Paolo Tonella

Research output: Contribution to journalArticlepeer-review

77 Scopus citations

Abstract

Automated test scripts are used with success in many web development projects, so as to automatically verify key functionalities of the web application under test, reveal possible regressions and run a large number of tests in short time. However, the adoption of automated web testing brings advantages but also novel problems, among which the test code fragility problem. During the evolution of the web application, existing test code may easily break and testers have to correct it. In the context of automated DOM-based web testing, one of the major costs for evolving the test code is the manual effort necessary to repair broken web page element locators - lines of source code identifying the web elements (e.g. form fields and buttons) to interact with. In this work, we present Robula+, a novel algorithm able to generate robust XPath-based locators - locators that are likely to work correctly on new releases of the web application. We compared Robula+ with several state of the practice/art XPath locator generator tools/algorithms. Results show that XPath locators produced by Robula+ are by far the most robust. Indeed, Robula+ reduces the locators' fragility on average by 90% w.r.t. absolute locators and by 63% w.r.t. Selenium IDE locators.

Original languageEnglish
Pages (from-to)177-204
Number of pages28
JournalJournal of Software: Evolution and Process
Volume28
Issue number3
DOIs
StatePublished - 1 Mar 2016
Externally publishedYes

Keywords

  • DOM selector
  • maintenance effort reduction
  • robust XPath locator
  • test cases fragility
  • web testing

Fingerprint

Dive into the research topics of 'Robula+: An algorithm for generating robust XPath locators for web testing'. Together they form a unique fingerprint.

Cite this