2011-11-10 4 views
3

私は最近、すべての単体テストを一度に実行するときに問題に遭遇しました。UnitTestはVisual Studio 2010でハングし続ける

私はそれらをデバッグして問題なく別々のテストを実行することができますが、それらをすべて一緒に実行すると、テスト実行は途中で止まってしまいます。

これが起こる:

  1. 最初のテスト
  2. は、それが立ち往生いくつかの点で
  3. (ただし、通常より遅い)問題なく解析する「ソリューションですべてのテストを実行します」。例外はありませんが、VSは保留中のテストの実行を停止します。
  4. テスト実行を中止すると、再び動作が停止します。テストを中止するには、VSを再起動する必要があります。

通常、私のコードにはバグが予想されますが、最後の成功したテストランからコードを変更していません。私が唯一行ったのは、パフォーマンスウィザード - Cuncurrencyプロファイリングでした。

実行時にいくつかのテストを削除すると、新しい場所が停止します(残ったテストは実際に入力されません)。

私はこれを引き起こしている何かを持っていません。しかし、コードのエラーではなくVS設定で問題が発生しているようです。

提案がありますか?パフォーマンステストウィザードは、テストの実行方法に影響を与えた可能性のある設定を変更しますか?

システムの詳細: Windows 7の究極の64ビット、 のVisual Studio 10プレミアム

答えて

1

これはなぜ実際には説明できませんが、問題は解決しました。

私はパフォーマンスウィザード、そして今、私のテスト作品との 『接触』していたプロジェクトの一つで、以前のバージョンに「.csproj」ファイルを逆転させました。

もいくつかのケースで「DEBUG」に「RELEASE」モードからソリューションの設定を変更することができパフォーマンスウィザードに注意してください。これは私の場合ではありませんでしたが、私の同僚の一部にとっては痛みでした。

1

これは、同時実行の問題のように聞こえます。あるテストがテスト環境を変更し、別のテストがデッドロックになるようです。いくつかのテストを削除すると、テストの実行順序が変更され、他のいくつかのテストが停止します。

私はテスト環境/外部依存関係に関する同時性の問題を探します。

+0

これはdevenv.exe内のバグ/並行性の問題です(プロセス分離の問題はありません) - メインスレッドはロックを待ってハングします(テスト結果ウィンドウの描画に関係します) 。 – fusi

関連する問題