It Is Not Only About Control Dependent Nodes: Basic Block Coverage for Search-Based Crash Reproduction

Pouria Derakhshanfar, Xavier Devroey, Andy Zaidman

Résultats de recherche: Contribution dans un livre/un catalogue/un rapport/dans les actes d'une conférenceArticle dans les actes d'une conférence/un colloque


Search-based techniques have been widely used for white-box test generation. Many of these approaches rely on the approach level and branch distance heuristics to guide the search process and generate test cases with high line and branch coverage. Despite the positive results achieved by these two heuristics, they only use the information related to the coverage of explicit branches (e.g., indicated by conditional and loop statements), but ignore potential implicit branchings within basic blocks of code. If such implicit branching happens at runtime (e.g., if an exception is thrown in a branchless-method), the existing fitness functions cannot guide the search process. To address this issue, we introduce a new secondary objective, called Basic Block Coverage (BBC), which takes into account the coverage level of relevant basic blocks in the control flow graph. We evaluated the impact of BBC on search-based crash reproduction because the implicit branches commonly occur when trying to reproduce a crash, and the search process needs to cover only a few basic blocks (i.e., blocks that are executed before crash happening). We combined BBC with existing fitness functions (namely STDistance and WeightedSum) and ran our evaluation on 124 hard-to-reproduce crashes. Our results show that BBC, in combination with STDistance and WeightedSum, reproduces 6 and 1 new crashes, respectively. BBC significantly decreases the time required to reproduce 26.6% and 13.7% of the crashes using STDistance and WeightedSum, respectively. For these crashes, BBC reduces the consumed time by 44.3% (for STDistance) and 40.6% (for WeightedSum) on average.

langue originaleAnglais
titreSearch-Based Software Engineering - 12th International Symposium, SSBSE 2020, Proceedings
rédacteurs en chefAldeida Aleti, Annibale Panichella
EditeurSpringer Science and Business Media Deutschland GmbH
Nombre de pages16
ISBN (imprimé)9783030597610
Les DOIs
Etat de la publicationPublié - 2020
Modification externeOui
Evénement12th International Symposium on Search-Based Software Engineering, SSBSE 2020 - Bari, Italie
Durée: 7 oct. 20208 oct. 2020

Série de publications

NomLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume12420 LNCS
ISSN (imprimé)0302-9743
ISSN (Electronique)1611-3349

Une conférence

Une conférence12th International Symposium on Search-Based Software Engineering, SSBSE 2020
La villeBari

Empreinte digitale Examiner les sujets de recherche de « It Is Not Only About Control Dependent Nodes: Basic Block Coverage for Search-Based Crash Reproduction ». Ensemble, ils forment une empreinte digitale unique.

  • SSBSE 2020 Best Paper Award

    Derakhshanfar, P. (Bénéficiaire), DEVROEY, Xavier (Bénéficiaire) & Zaidman, A. (Bénéficiaire), 8 oct. 2020

    Prix: Prix ​​(y compris les médailles et récompenses)

Contient cette citation