AB= BA: Execution equivalence as a new type of testing oracle

A. Elyasov, W. Prasetya, J. Hage, U. Rueda, T. Vos, N. Condori-Fernández

Research output: Chapter in Book/Report/Conference proceedingConference Article in proceedingAcademicpeer-review


This paper introduces a new type of automated testing oracle, called the execution equivalence (EE) invariants. These invariants can be mined from application logs that capture both application events and application states. The EE-invariants express an equivalence relation on the sequences of application events in terms of equality of respective initial and final states, which these sequences leave in the logs during the run-time. We claim that even equivalences up to a length of four events already provide useful testing oracle. We extended our tool LOPI (LOg-based Pattern Inferencer) with the algorithm for mining EE-invariants, and evaluated the effectiveness of these invariants on a case-study | the web application Flex Store. The evaluation is carried out based on two parameters: the false positive rate and the fault finding capability. Moreover, we compared the strength of LOPI's execution equivalences with Daikon's data invariants. This comparison has shown that Daikon was slightly more effective than LOPI in testing Flex Store. However, we have found a suitable confidence level for LOPI which allows to outperform Daikon.

Original languageEnglish
Title of host publication2015 Symposium on Applied Computing, SAC 2015
EditorsDongwan Shin
PublisherAssociation for Computing Machinery
Number of pages8
ISBN (Electronic)9781450331968
Publication statusPublished - 13 Apr 2015
Externally publishedYes
Event30th Annual ACM Symposium on Applied Computing, SAC 2015 - Salamanca, Spain
Duration: 13 Apr 201517 Apr 2015

Publication series

SeriesProceedings of the ACM Symposium on Applied Computing


Symposium30th Annual ACM Symposium on Applied Computing, SAC 2015
Abbreviated titleSAC 2015


  • Automated oracles
  • Daikon
  • Inference
  • Logs
  • Regression testing


Dive into the research topics of 'AB= BA: Execution equivalence as a new type of testing oracle'. Together they form a unique fingerprint.

Cite this