Issue No.03 - May/June (2007 vol.24)
Scott W. Ambler , IBM
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MS.2007.91
Developers can use a test-driven development with database schema just as they use it with application code. Implementing test-driven database development (TDDD) involves three relatively simple steps: database refactoring, database regression testing, and continuous database integration. In database refactoring, developers make a simple change to a database to improve the design without changing its semantics. In database regression testing, they run a comprehensive test suite that validates the database regularly-ideally, whenever developers change the database schema or access the database in a different way. In continuous database integration, developers rebuild and retest the database schema whenever it changes. From a technical viewpoint, TDDD is straightforward. However, cultural challenges can make it difficult to adopt.
test-driven development, TDD, database refactoring, database testing, test-driven database design, TDD, relational database, behavior-driven development, BDD
Scott W. Ambler, "Test-Driven Development of Relational Databases", IEEE Software, vol.24, no. 3, pp. 37-43, May/June 2007, doi:10.1109/MS.2007.91