I willwould split your question ininto two parts -:
-
What needs to be tested
- What needs to be tested?
You have already covered some critical scenarios. Besides these following should also be covered-:
-Ensure that all expected data is loaded into target table.
-Compare record counts between source and target.
-Check for any rejected records
-Null, non-unique or out of range data
-Verify default values
-Verify Field Boundaries, range/distribution of value
-Verify unique keys, primary keys
-Verify any derivations & Calculation in the tables
-Verify the data Load technique (Incremental/ Full Refresh)
-
How can this be tested -?
- How can this be tested?
In my opinion, there are three ways to test this scenario-:
i) Using Third Party utility. You can use programming languages like Python/ Java for loading the data in some test database and doing the data comparison.
ii) Manual comparison -: For some subset of data You can stare and compare the data between source & Target Databases. Or You can download samples of data from Source & Target in Excel and use Macros for data Comparison & Validation. But as this involves manual steps, this will be time consuming & will not give good data coverage.
iii) Using ETL test Automation tools – You can check some tools like Query Surge , BI Validator which can do file to DB comparison.