What is the need of SQL database knowledge in Qality Assurance?
During the testing process, the testers need to be efficient enough in validating and verifying the data that is been entered through frontend in Database. At least the understanding of Database and basic queries will help the tester to do better job.
Being familiar with SQL is a very strong benefit if you're testing a database application. You'll know how to look inside the tables to get the information you need and be able to identify areas that could cause problems. Also things like backing up and restoring test data and clearing out unwanted data is very helpful.
I agree with vas04,
A simple example of why this is important would be the following:
Your are testing a web based fincancial transaction system that uses a SQL backend.
You are black box testing (using the UI, no knowledge of the code behavior).
You enter a credit card using spaces between each number sequence(just the way it looks on the card) and you submit to test the purchase process.
You get a blank page as a return from the transaction...
Now what? As a tester, it's always nice to be able to point to "what" failed, and maybe even "why".
If you look into the database, you may find that the credit card number that was stored is null (no value at all).
This in turn caused the app to break.
By having this information, you can work with the developer to determine what tier the null was created on and and how to address it so it doesn't occur, and if it does, it doesn't break the app.
yes, this does extend beyond the boundary of Black Box testing, but not by much, and the extra action is of significant value.
Hope that helps,
[ 11-18-2004, 02:01 PM: Message edited by: jlafferty ]
It always depends upon the type of Applications that you are testing. In my opinion tester should be a kind of a Jack in all trades of Technology/Software. It always helps if the tester has a minimal knowledge on all the technical aspects of the application and technology.