A good decision making requires a data warehouse with quality data. To ensure the data quality as an ETL tester we need to follow ETL testing best practices.
Below are the best practices points which would be useful in ETL testing stage.
Allocate more time to understand
Allocate time to understand the data model and existing jobs, so that we will get to know about tables and relationships.
Do data analysis
Do data analysis in terms of what types of data are currently available and what data we are going to work on. Also, get to know about the purpose of this data movement.
Know about downstream applications
Understand about how these data will be utilized or consumed, so that you can get the data requirement from end user perspective.
Raise more questions
Raise questions as much you can during kickoff meeting, during walkthrough meeting, during estimation stage, during test planning stage and during test design stage, ensure that you don’t have any major questions during the execution phase.
Say NO to open assumptions
Never ever keep assumptions within yourself, disclose as and when you come to know.
Be clear on what you are doing
Keep yourself clear on what to test and what you want. Rise immediately in case of any shortages such as test data unavailability, don’t hold till execution phase.
Initiate for discussions
If you are unclear on anything related to testing, post your queries and invite required people for discussion to close.
Do proper coverage and quality review
Ensure that all SQL queries will be reviewed if you are new to ETL testing to avoid any later point of issues
Try to automate
Start thinking of automating the test cases from project starting stages itself. Either use existing automation tools in market like Query surge and DVO, else develop an automation utility if you know scripting or ready to learn.
Opting for isolated testing
Go for isolation testing process if you foresee any risk of delay in getting test data or delay in dependency systems which would directly impact the testing schedule.
- Keep test cases up to date
Keep SQL queries up to date whenever any change request comes.