1. Add an ingestion YAML file with the service and the credentials of it. Use when possible a Dockerized environment, otherwise, remember to use environment
variables for sensitive information in case of external resources. On each test, the YAML file will be modified by the `build_yaml` method which will create
a copy of the file and prepare it for the tests. This way, we avoid adding (and maintaining) an extra YAML for each test.
Currently, it runs CLI tests for any database connector.
-`./base/test_cli_db` has 8 test definitions for database connectors. It is an abstract class.
-`./common/test_cli_db` is another abstract class for those connectors whose sources implement the `CommonDbSourceService` class.
- It partially implements some methods from `test_cli_db_base`.
-`test_cli_{connector}` is the specific connector test. More tests apart the ones implemented by the `./base/test_cli_db` can be run inside this class.
### How to add a database connector
1. Use `test_cli_mysql.py` as example. Your connector E2E CLI test must follow the name convention: `test_cli_{connector}.py` and the test
class must extend from `CliCommonDB.TestSuite` if the connector's source implement the `CommonDbSourceService` class, otherwise, from `CliDBBase.TestSuite`.
2. If it is a database connector whose source implement the `CommonDbSourceService` class, these methods must be overwritten:
Currently, it runs CLI tests for any database connector.
-`./base/test_cli_dashboard` has 3 test definitions for database connectors. It is an abstract class.
-`./common/test_cli_dashboard` is another class that partially implements some methods from `test_cli_dashboard_base`.
-`test_cli_{connector}` is the specific connector test. More tests apart the ones implemented by the `./base/test_cli_dashboard` can be run inside this class.
### How to add a dashboard connector
1. Use `test_cli_tableau.py` as example. Your connector E2E CLI test must follow the name convention: `test_cli_{connector}.py` and the test
class must extend from `CliCommonDashboard.TestSuite`.
2. These methods must be overwritten:
```python
# in case we want to do something before running the tests