Database testing has gained importance in the recent times and so the demand for experts in database testing. In order to cater to the increasing demand, many database testing tutorials with sample test cases have also come up.
As Graphic User Interface happened to be the most visible part of an application, it was given more importance by the developers and testers. At the same time, validation of database, which is the heart of the application is also important. Thus you find the need for database testing.
Basic Differences between Database Testing and User Interface Testing
|User Interface Testing||Database Testing|
|This is also known as front end testing or Graphic User Interface testing||This is also known as Back end testing or Data testing|
|UI test will take care of all items including applications which are viewable to the user for testing||In this type of testing, items which are invisible to the user will be tested.|
|In this type of testing, validation of text boxes, select dropdowns, buttons, calendars, navigation, display of images etc. is performed||This type of test includes validation of schema, database tables, keys columns, etc|
Types of Database Testing
There are three types of database testing and they are Structural Testing, Functional Testing, and Non-functional testing.
Structural Database Testing
Validation of all elements inside the data repository that are used for the storage of data which cannot be manipulated by the end users is called as structural database testing. Validation of database server is also included in this. There are different subtypes of structural database testing.
- Schema Testing
- Database Table, Column Testing
- Stored Procedures Testing
- Trigger Testing
- Database server validation
Functional Database Testing
Functional database testing is to ensure that all the transactions and functions performed by the end user are in accordance with the required specifications. The following tests are included in it.
- Data integrity and consistency testing
- Validation of login and user security
Non-Functional Database Testing
As far as database testing is concerned there are other tests in the nonfunctional category.
- Load Testing
- Stress Testing
Best Practices in Database Testing
- All data, including metadata and functional data, should be tested.
- Data created by or created in consultation with the development team should be validated.
- Validation of data can be done using automation tools and also manually.
- Make use of different techniques including cause-effect graphing technique, equivalence partitioning technique, boundary-value analysis technique etc for generation of required test data conditions.
- Take a timely backup of the database.