+32 3 450 88 42

5 reasons why SQL is essential for a professional quality engineer

Brightest > 5 reasons why SQL is essential for a professional quality engineer

5 reasons why SQL is essential for a professional quality engineer

Posted by: admin
Category: Business, Test leadership & expertise

1. Save time

Often as a tester you must perform long extensive flows, the well-known ‘end to end testing’. By following up your actions with some select statements, you can verify if data is updated correctly in the database. Developers check on data all the time in their code. That’s why data often has an influence on how an application acts. It is a pity to perform a full cycle of a flow, when the problem is actually present at the beginning. This way you can save yourself a serious amount of time.

2. Find hidden bugs

Sometimes developers must perform a data migration, which means a modification of certain data-tables. As a tester you should be able to test these data migrations. A simple example: I once found a bug where a developer accidentally updated the provinces of all addresses, for all countries, that contained a certain code. However, he only meant to do that for one country, not all of them. I wrote a small SQL to demonstrate the problem and pasted it in the bug description, which made it much easier for the developer to correct the data migration.

3. Make your job easier

If you’re blocked with a test scenario because of data, you can easily find a workaround. Simply make a query of the table and update the data to the desired value. For example when a Boolean field that doesn’t change its state is blocking you for your ongoing flow, because of a bug. Then just change the state in the database to continue your test scenario. Heads-up: only perform update statements on development environments (of course).


4. Catch bugs at the root

A large percentage of bugs can be found in the database of the application. Applications are – simply said – a presentation of data, which can be modified by actions in the application. So, if something goes wrong, it is mostly present in the database as well.


5. Check correlations

Actions in the application often have influence on multiple data-tables, thus multiple pages and flows. By doing a select statement with inner joins, you can check if everything that correlates with each other, is set correctly after a certain action. This way you can tackle considerably more bugs at once, instead of when you would have checked it in the application.

By Jarno Hermans, Junior Test Automation Engineer @Brightest