Automatic testing, although useful, is still quite ineffective against faults that do not cause crashes or uncaught exceptions. In the majority of the cases automatic tests do not include oracles, and only in some cases they incorporate assertions that encode the observed behavior instead of the intended behavior, that is if the application under test produces a wrong result, the synthesized assertions will encode wrong expectations that match the actual behavior of the application. In this paper we present ZoomIn, a technique that extends the fault-revealing capability of test case generation techniques from crash-only faults to faults that require non-trivial oracles to be detected. ZoomIn exploits the knowledge encoded in the manual tests written by developers and the similarity between executions to automatically determine an extremely small set of suspicious assertions that are likely wrong and thus worth manual inspection. Early empirical results show that ZoomIn has been able to detect 50% of the analyzed non-crashing faults in the Apache Commons Math library requiring the inspection of less than 1.5% of the assertions automatically generated by EvoSuite.

Pastore, F., Mariani, L. (2015). ZoomIn: Discovering failures by detecting wrong assertions. In Proceedings of the International Conference on Software Engineering (ICSE) (pp.66-76). IEEE Computer Society [10.1109/ICSE.2015.29].

ZoomIn: Discovering failures by detecting wrong assertions

PASTORE, FABRIZIO;MARIANI, LEONARDO
2015

Abstract

Automatic testing, although useful, is still quite ineffective against faults that do not cause crashes or uncaught exceptions. In the majority of the cases automatic tests do not include oracles, and only in some cases they incorporate assertions that encode the observed behavior instead of the intended behavior, that is if the application under test produces a wrong result, the synthesized assertions will encode wrong expectations that match the actual behavior of the application. In this paper we present ZoomIn, a technique that extends the fault-revealing capability of test case generation techniques from crash-only faults to faults that require non-trivial oracles to be detected. ZoomIn exploits the knowledge encoded in the manual tests written by developers and the similarity between executions to automatically determine an extremely small set of suspicious assertions that are likely wrong and thus worth manual inspection. Early empirical results show that ZoomIn has been able to detect 50% of the analyzed non-crashing faults in the Apache Commons Math library requiring the inspection of less than 1.5% of the assertions automatically generated by EvoSuite.
paper
Oracle, dynamic analysis, testing
English
International Conference on Software Engineering (ICSE) May 16-24
2015
Proceedings of the International Conference on Software Engineering (ICSE)
9781479919345
2015
1
66
76
7194562
partially_open
Pastore, F., Mariani, L. (2015). ZoomIn: Discovering failures by detecting wrong assertions. In Proceedings of the International Conference on Software Engineering (ICSE) (pp.66-76). IEEE Computer Society [10.1109/ICSE.2015.29].
File in questo prodotto:
File Dimensione Formato  
CR.pdf

accesso aperto

Tipologia di allegato: Submitted Version (Pre-print)
Dimensione 504.92 kB
Formato Adobe PDF
504.92 kB Adobe PDF Visualizza/Apri
4-ICSE.pdf

Solo gestori archivio

Tipologia di allegato: Publisher’s Version (Version of Record, VoR)
Dimensione 496.93 kB
Formato Adobe PDF
496.93 kB Adobe PDF   Visualizza/Apri   Richiedi una copia

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10281/96978
Citazioni
  • Scopus 8
  • ???jsp.display-item.citation.isi??? 7
Social impact