What is the best practice to test a ETL pipeline?
I have been writing and testing ETL pipelines for a few years now and there are typically two types of pipelines.


Code only pipelines written in python or whatever
GUI pipelines using tools like SSIS or Informatica


The first set you can test like any code, unit and integration tests and the second you can only really test using integration tests I.e. you deploy the code and run it in a test environment.

I expand on how to unit test code pipelines here: https://the.agilesql.club/2019/07/how-do-we-test-etl-pipelines-part-one-unit-tests/

Essentially you will want unit and integration tests and also monitoring which is a form of continuous testing in production :)