There are three main aspect of any dynamics website, cloud base applications and those are backend code, UI and the database. So what we code at backend will define front end which is UI, and what we or user put in the UI fields goes to the database.
Main difference between the UI Testing, Backend Code Testing and the Data Base Testing are shown below.
Backend Testing: Here to perform the backend testing, tester should know the code and how it work. Here tester will see all the code and try to find out any defect inside the code. Tester who performs backend testing is called as White Box Tester.
UI: The front end of the application which is viewable for the end user, here what tester need to test are the things like buttons, colors, text alignments, links, images, layout, navigations etc. are the part of UI testing.
Database Testing: like there are forms where user insert his details so this detail need to be stored somewhere. That is stored in database. All the data is stored in database. Database is very important thing. And it need to be ensure that data base should be designed and working properly. Database Tester need to test following thing while performing database testing.
- Database Structure: each field of form has its own row to store the data. For example, suppose there is a form called enquiry form which has fields like name, number, email id, and description, so database should be designed like there should be a table in database whose name should be enquiry table and in that table there should be one separate column for each field like one column for name field, second column for mobile number filed like this we need to make column for every field. So this is the tester responsibility that each and every field has its place in tables. And there should be a table for most of the form and every input that we take from the end user on form should get stored in database properly. And there is not any missing database or any missing column or any missing tables.
- Data: some time there is possibility that data does not get stored database, for example lets say end user is filling the enquiry form on our software and it submitted the form by clicking on the save button and software shown and a message like your enquiry stored successfully but if we click the data base there is not any entry present of that enquiry which user just filled. So it is need to be ensured that data are properly getting stored in the data.
- Another scenarios is when user want to update his enquiry or any data then user will click on the edit button then make necessary change and save the form then if we check the data base there is possibilities like new updated data is not updated in database or it might create a new entry for updating. This are the possibilities that can come, testers need to consider this possibilities and should, and should test the software by considering this possibilities.
- Another things like indexing in database which helpful for retrieving data from the database fast. When you search anything on software then search that searched word in database and suppose there is huge data is database without indexing then it will take lots of time. But if there is proper indexing done in database then it will take less time to show the result. Tester also need to look for such a things while performing the database testing.
- Triggers: triggers are the codes which should get executed after particular event happens. This working of trigger need to be check properly, all the triggers are working properly or not, the time of execution or the sequence of the executions are correct or not this thing need to be tested. There are other things like stored procedures which is also need to be tested whether those all are working as per the expectation or not.
- This is short article on how we can start our database testing and what things need to be tested in database.