1

2 台のマシン間の通信プロトコル モジュールを開発しました。これは明示的なプロトコルであり、WCF や WebServices などの標準プロトコルを使用することはできませんでした。

このモジュールには 2 つの機能があります。 1. エンド ポイント 1 からエンド ポイント 2 に通知を送信します。 2. エンド ポイント 1 からエンド ポイント 2 に要求を送信し、エンド ポイント 1 でエンド ポイント 2 からの応答を受信します。

これら 2 台のマシン間で完全な統合テストを行う前に (反対側は C++ で記述されています)、クライアント コンソールとサーバー コンソールを作成して、localhost のローカル tcp を介して 2 つの主要な機能を手動でシミュレートしました。

ソリューション ビルド プロセスでこのテストを自動化する最良の方法は何ですか? 単体テスト フレームワークを使用しようとしましたが、うまく機能しませんでした。単体テスト フレームワークを使用する場合、クライアントとサーバーを 2 つの異なるスレッドで実行する必要があり、スムーズに動作しませんでした...

4

1 に答える 1

3

単体テストでMoqなどのモック フレームワークを使用して、エンドポイント 2 への接続をシミュレートできます。これにより、エンドポイント 1 がエンドポイント 2 からの可能なすべてのタイプの応答に対して適切に動作することをテストできます。たとえば、エンドポイント 1 がエンドポイント 2 に接続できない場合、エンドポイント 1 が例外をスローすると主張します。

于 2013-05-13T11:04:17.997 に答える