Furthermore, many agile software developers realize that you can test more than just your code, you can in fact validate every work product created on a software development project if you choose to. In this section I discuss the need for various database sandboxes in which people will test: in short, if you want to do database testing then you're going to need test databases (sandboxes) to work in.
I then overview how to write a database test and more importantly describe setup strategies for database tests.
This reflects a penchant for over-specialization and a serial approach towards development by traditionalists, two ideas which have also been shown to be questionable organizational approaches at best.
They test as often and early as possible, and better yet they test first.
As you can see with the agile system development lifecycle (SDLC) of Figure 3 testing is in fact something that occurs during the development and release cycles, not just during release. Although you want to keep your database testing efforts as simple as possible, at first you will discover that you have a fair bit of both learning and set up to do.
If the answer is no then they refactor the design to make it the best possible then they continue with a TFD approach.
This strategy is applicable to developing both your application code and your database schema, two things that you would work on in parallel.
More importantly, it enables them to automate their database testing script into the build procedure itself.