![]() |
![]() |
TR-CIS-2005-01 (01/12/2005)
David Chays
Abstract
Database systems play an important role in nearly every modern
organization, yet relatively little research effort has focused on how to
test them. This dissertation discusses issues arising in testing database
systems, presents an approach to testing database applications, and
describes AGENDA, a set of tools to facilitate the use of this approach.
In testing such applications, the state of the database before and after
the user's operation plays an important role, along with the user's input
and the system output. A framework for testing database applications is
introduced. A complete tool set, based on this framework, has been
prototyped. The components of this system are: a parsing tool that
gathers relevant information from the database schema and application, a
tool that populates the database with meaningful data that satisfy
database constraints, a tool that generates test cases for the
application, a tool that checks the resulting database state after
operations are performed by a database application, and a tool that
assists the tester in checking the database application's output.
This dissertation focuses on the tools involved in generating the
database state and inputs for the application. A case study based on
the TPC-C benchmark shows promising results.