ユニットテストでは、すべての外部依存関係をモックすることができます。また、インターフェイスを使用してBigQueryクライアントへのアクセスを抽象化している限り、モックを問題にしないでください。
統合テストでは、私の代わりにすべてのサードパーティの依存関係がテストされました アプリケーションの拡張が必要です。
たとえば、外部ソースからBigQueryにデータをストリームするETLがあります。この場合、統合テストでは、すべてのデータがBigQuery内にあることを確認する必要があります。つまり、検証段階では、 、および必要に応じてネストされたメッセージ
もう1つのケースでは、いくつかのビジネスSQLを実行するアプリケーションがあります。この場合、アプリケーション実行前にいくつかのテストデータを入力する必要があります。 アプリケーションはビュー/新規テーブル/ストリームとしてSQL出力をパブリッシュする必要があります。検証のためのデータが不足しています。
いくつかのライブラリは、彼らは、などの動的マクロ/述語、上述の例のための簡単な解決策とSQLを完全にサポートを提供するのBigQuery/NoSQLの/ SQL
を含むデータストアとの統合テストの世話をして、すでにあります。.. ..
- Dsunit(行く-langの)
- JDsunit(Java)の
データストア統合テストライブラリがオプションではなく、単にBigQueryクライアントをテストするだけの場合は、クライアントがRESTを使用するため、ネットワークスニファを使用して、何を送信しているのかを簡単に記録できますそれを返信者に使用することができます。 BigQueryを 公開BGエンドポイントからリプライヤーにリダイレクトするには、http java proxyを使用します。
JDSUnitのgo-langをインストールする必要がありますか?また、DSUnitサーバをインストールする必要があるとも言われています。 – user1965449
golangをインストールする必要があります.jdsunitは実際にデータ準備と検証を担当するdsunitサーバーの単純な休憩クライアントです –
golangをインストールするとdsunitサーバーは自動的にインストールされますか? BigQueryと通信するコンポーネントは、jdsunitクライアントかdsunitサーバーですか?どうか明らかにしてください。ありがとう。 – user1965449