Writing a regular e xpression that exactly captures a set of desired strings is difficult, since regular expressions provide a compact syntax that makes it difficult to easily understand their meaning. Testing is widely used to validate regular expressions. Indeed, although a developer could have problems in writing the correct regular expression, (s)he can easily assess whether a string should be accepted or not. Starting from this observation, we propose an iterative mutation-based process that is able to test and repair a faulty regular expression. The approach consists in generating strings S that distinguish a regular expression r from its mutants, asking the user to assess the correct evaluation of S, and possibly substituting r with a mutant r′ that evaluates S more correctly than r; we propose four variants of the approach which differ in the policy they employ to judge whether r′ is better than r. Experiments show that the proposed approach is able to actually repair faulty regular expressions with a reasonable user’s effort.

(2018). Interactive testing and repairing of regular expressions . Retrieved from http://hdl.handle.net/10446/131429

Interactive testing and repairing of regular expressions

Gargantini, Angelo;
2018-01-01

Abstract

Writing a regular e xpression that exactly captures a set of desired strings is difficult, since regular expressions provide a compact syntax that makes it difficult to easily understand their meaning. Testing is widely used to validate regular expressions. Indeed, although a developer could have problems in writing the correct regular expression, (s)he can easily assess whether a string should be accepted or not. Starting from this observation, we propose an iterative mutation-based process that is able to test and repair a faulty regular expression. The approach consists in generating strings S that distinguish a regular expression r from its mutants, asking the user to assess the correct evaluation of S, and possibly substituting r with a mutant r′ that evaluates S more correctly than r; we propose four variants of the approach which differ in the policy they employ to judge whether r′ is better than r. Experiments show that the proposed approach is able to actually repair faulty regular expressions with a reasonable user’s effort.
2018
Arcaini, Paolo; Gargantini, Angelo Michele; Riccobene, Elvinia
File allegato/i alla scheda:
File Dimensione del file Formato  
regexRepair_ICTSS2018_cameraReady.pdf

Solo gestori di archivio

Versione: postprint - versione referata/accettata senza referaggio
Licenza: Licenza default Aisberg
Dimensione del file 489.25 kB
Formato Adobe PDF
489.25 kB Adobe PDF   Visualizza/Apri
Pubblicazioni consigliate

Aisberg ©2008 Servizi bibliotecari, Università degli studi di Bergamo | Terms of use/Condizioni di utilizzo

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10446/131429
Citazioni
  • Scopus 3
  • ???jsp.display-item.citation.isi??? 2
social impact