One type of test is called integration testing, which observes how separate systems interact. Specifically, how ServiceA may interact with ServiceB, like an API calling a DB to update an entry.
For databases, we use 'mocking' which starts an instance of the db locally and gives it fake data. The tests will start a server and run operations between server and DB, and verify that the results are what was expected.
BigQuery is fundamentally different from other databases: it distributes load over a massive amount of compute engines, which cannot be mocked. Instead, we can make a BigQuery Test environment on Google Cloud. By having the BigQueryWrapper point to this, we can effectively mock the database.
Propose a plan for integrating a BigQuery Testing Environment into the integration testing scheme.
One type of test is called integration testing, which observes how separate systems interact. Specifically, how ServiceA may interact with ServiceB, like an API calling a DB to update an entry.
For databases, we use 'mocking' which starts an instance of the db locally and gives it fake data. The tests will start a server and run operations between server and DB, and verify that the results are what was expected.
BigQuery is fundamentally different from other databases: it distributes load over a massive amount of compute engines, which cannot be mocked. Instead, we can make a BigQuery Test environment on Google Cloud. By having the BigQueryWrapper point to this, we can effectively mock the database.
Propose a plan for integrating a BigQuery Testing Environment into the integration testing scheme.