Abstract
Test input generation is one of the key applications of symbolic execution (SE). However, being a path-sensitive technique, SE often faces path explosion even when creating a branch-adequate test suite. Path-merging symbolic execution (PM-SE) alleviates the path explosion problem by summarizing regions of code into disjunctive constraints, thus traversing at once a set of paths with the same prefixes. Previous work has shown that PM-SE can reduce run-time up to 38%, though these improvements can be impaired if the summarized code results in complex constraints or introduces additional symbols that increase the number of branching points in the later execution.Considering these trade-offs, examining the ability of PM-SE to generate branch-adequate test inputs is an open research problem. This paper investigates it by developing a technique that extracts structural coverage-related queries from disjoint constraints. Using this approach, we extend PM-SE to generate branch-adequate test inputs.Experiments compare the effectiveness and efficiency of test input generation by SE and PM-SE techniques. Results show that those techniques are complementary. For some programs, PM-SE yields faster coverage, with fewer generated tests, while for others, SE performs better. In addition, each technique covers branches that the other fails to discover.
Original language | English (US) |
---|---|
Title of host publication | Proceedings - 2023 IEEE/ACM International Conference on Automation of Software Test, AST 2023 |
Publisher | Institute of Electrical and Electronics Engineers Inc. |
Pages | 79-89 |
Number of pages | 11 |
ISBN (Electronic) | 9798350324020 |
DOIs | |
State | Published - 2023 |
Externally published | Yes |
Event | 4th IEEE/ACM International Conference on Automation of Software Test, AST 2023 - Melbourne, Australia Duration: May 15 2023 → May 16 2023 |
Publication series
Name | 2023 IEEE/ACM International Conference on Automation of Software Test (AST) |
---|
Conference
Conference | 4th IEEE/ACM International Conference on Automation of Software Test, AST 2023 |
---|---|
Country/Territory | Australia |
City | Melbourne |
Period | 5/15/23 → 5/16/23 |
Bibliographical note
Publisher Copyright:© 2023 IEEE.
Keywords
- Path merging
- Symbolic Execution
- program analysis
- test case generation
- test input generation
- veritesting