Database state generation via dynamic symbolic execution for coverage criteria

Kai Pan, Xintao Wu, Tao Xie

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

Abstract

Automatically generating sufficient database states is imperative to reduce human efforts in testing database applications. Complementing the traditional block or branch coverage, we develop an approach that generates database states to achieve advanced code coverage including boundary value coverage(BVC) and logical coverage( LC) for source code under test. In our approach, we leverage dynamic symbolic execution to examine close relationships among host variables, embedded SQL query statements, and branch conditions in source code. We then derive constraints such that data satisfying those constraints can achieve the target coverage criteria. We implement our approach upon Pex, which is a state-of-the-art DSE-based test-generation tool for .NET. Empirical evaluations on two real database applications show that our approach assists Pex to generate test database states that can effectively achieve both BVC and LC, complementing the block or branch coverage.

Original languageEnglish (US)
Title of host publicationProceedings of the 4th International Workshop on Testing on Database Systems, DBTest 2011, in Conjunction with the 2011 ACM SIGMOD/PODS Conference
DOIs
StatePublished - Jul 15 2011
Externally publishedYes
Event4th International Workshop on Testing on Database Systems, DBTest 2011, in Conjunction with the 2011 ACM SIGMOD/PODS Conference - Athens, Greece
Duration: Jun 13 2011Jun 13 2011

Publication series

NameProceedings of the 4th International Workshop on Testing on Database Systems, DBTest 2011, in Conjunction with the 2011 ACM SIGMOD/PODS Conference

Other

Other4th International Workshop on Testing on Database Systems, DBTest 2011, in Conjunction with the 2011 ACM SIGMOD/PODS Conference
CountryGreece
CityAthens
Period6/13/116/13/11

Keywords

  • Coverage criteria
  • Database state generation
  • Dynamic symbolic execution

ASJC Scopus subject areas

  • Computer Science Applications
  • Information Systems

Fingerprint Dive into the research topics of 'Database state generation via dynamic symbolic execution for coverage criteria'. Together they form a unique fingerprint.

Cite this