SSBSE 2020 Best Paper Award
Last Thursday (08/10/2020), we received a best paper award for our paper entitled It is not Only About Control Dependent Nodes: Basic Block Coverage for Search-Based Crash Reproduction. In this paper, we revisit the approach level and branch distance heuristics widely used for white-box test generation. 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).
- Basic block coverage for search-based unit testing and crash reproduction
- Basic Block Coverage for Unit Test Generation at the SBST 2022 Tool Competition
- Crash reproduction difficulty, an initial assessment
- Good Things Come In Threes: Improving Search-based Crash Reproduction With Helper Objectives
- Botsing, a Search-based Crash Reproduction Framework for Java