2011-10-19 4 views
0

私たちは、サードパーティのWebサービスと統合するオンラインサービスのセクションを持っています。したがって、Visual Studio 2010でMSTestを使用している多数の単体テストがあり、第三者とのトランザクションが期待される応答になるようにしています。継続的なビルドのためにCCNetを実行しており、継続的な統合が意味することを正確に実行しています。多くの場合、上流層のチェックインがサービスの終了時にデータを変更し、統合を破ったのを発見しました。MSTest/CCNetを使用して外部の影響からテストの失敗を警告する方法

残念ながら、サードパーティの統合テストホストは、警告なしで保守のために停止する可能性があるため、信頼性がありません。そのため、これらの単体テストが接続の問題で失敗するため、ビルドが壊れる日が数回あります。これは非常に気を散らし、受け入れ可能な結果パスとしてマークする以外は、何もできません。我々のテストの多くは、therfore、次のようになります。

var client = new ThirdPartyClient(TestConfig); 
var Result = client.DoSomethingOverThere(ourDataToSend); 
Assert.IsFalse(Result == BadResult) 
Assert.IsTrue((Result == Success) || (Result == Timeout)) 

私は本当にテストを通過させ2つの可能な結果のどの知りたいのです。 (実際には、Assertを使用する方法があることを望んでいます。壊れたビルドとして数えなければ結論は出ません)しかし、誰もこの状況をどのように処理するかに関する推奨事項はありますか?

答えて

0

このポストアドレスInconclusive Tests in TFS Build Should Not Break the Buildでは、状況に応じた回避策が説明されています。私は、あなたの他の当事者に問題があるときにテストに非確定的な状態を設定することが、この問題に対処する実用的な方法であることに同意します。

関連する問題