Test Data Management
Throughout our introduction, we talked about testing software: send this input, run this transformation, and expect this output. We talked about the state that the software is in, such as viewing the home page, but not the state of the data.
Consider, for example, testing adding a page with some text, followed by searching. The first time you run the test, everything works, but the second time, you get an error that the page already exists. You fix that by making the page unique, and the next time you run it, there is a different error – the number of search results has changed. Or, you may store user details, including their birthday, in the database, and after their birthday, all of a sudden the calculation for auto insurance costs is incorrect. We call this the test data management problem. This chapter is about how to solve it.
By the end of this chapter, you will have learned a variety of techniques to create, store, edit, delete, and restore...