Database Testing

Database testing is the process of validating that the meta data (structure) and data stored in the database meets the requirement and design. Database testing is important because it helps identify data quality and application performance issues that might otherwise get detected only after the application has been live for some time.


Structural database testing involves the validation of all those elements inside the data repository that are used primarily for storage of data and which are not allowed to be directly manipulated by the end users. The validation of the database servers is also a very important consideration in these types of testing. The successful completion of this phase by the testers involves mastery in SQL queries.

Functional testing is performed keeping in mind an end-user point of view; whether the required transactions and operations run by the end-users meet the business specifications.

Following are the basic conditions which need to be observed for database validations.

  • Whether the field is mandatory while allowing NULL values on that field.
  • Whether the length of each field is of sufficient size?
  • Whether all similar fields have same names across tables?
  • Whether there are any computed fields present in the Database?

Non-functional testing involves performing load testing, stress testing, checking minimum system requirements to meet business specification, risk finding and performance optimization of database.