Structural Test Input Generation for 3-Address Code Coverage Using Path-Merged Symbolic Execution

Soha Hussein, Stephen McCamant, Elena Sherman, Vaibhav Sharma, Mike Whalen

Research output: Chapter in Book/Report/Conference proceedingConference contribution

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 languageEnglish (US)
Title of host publicationProceedings - 2023 IEEE/ACM International Conference on Automation of Software Test, AST 2023
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages79-89
Number of pages11
ISBN (Electronic)9798350324020
DOIs
StatePublished - 2023
Externally publishedYes
Event4th IEEE/ACM International Conference on Automation of Software Test, AST 2023 - Melbourne, Australia
Duration: May 15 2023May 16 2023

Publication series

NameProceedings - 2023 IEEE/ACM International Conference on Automation of Software Test, AST 2023

Conference

Conference4th IEEE/ACM International Conference on Automation of Software Test, AST 2023
Country/TerritoryAustralia
CityMelbourne
Period5/15/235/16/23

Bibliographical note

Publisher Copyright:
© 2023 IEEE.

Keywords

  • Path merging
  • Symbolic Execution
  • program analysis
  • test case generation
  • test input generation
  • veritesting

Fingerprint

Dive into the research topics of 'Structural Test Input Generation for 3-Address Code Coverage Using Path-Merged Symbolic Execution'. Together they form a unique fingerprint.

Cite this