5

単体テスト(VisualStudioのMSTest-.NET3.5 SP1)中に非常に奇妙な問題が発生しました:

  1. [ソリューションですべてのテストを実行する]をクリックします
  2. 1つの特定のクラスを除いて、すべてのテストに合格します。ただし、すべてのテストで次の例外がスローされます。「System.IO.FileLoadException:このアセンブリをロードすると、他のインスタンスとは異なる許可セットが生成されます。(HRESULTからの例外:0x80131401)」
  3. 次に、クラスにブレークポイントを設定します。結果:クラス内のすべてのテストに合格します(以前に失敗したのと同じテスト)。
  4. 「ソリューションですべてのテストを実行」をクリックします。別のクラスを除いて、すべてのテストに合格します。
  5. クラスにブレークポイントを設定します。結果:クラス内のすべてのテストに合格
  6. 「ソリューションですべてのテストを実行」をクリックします。最初のテストクラスを除いて、すべてのテストに合格します。

ご覧のとおり、問題は非常に一貫性がなく、デバッグが困難です。

Fusion Log Viewerを使用してみましたが、わかりにくい結果になりました。

何を探すべきですか?他の誰かがこの問題を経験しましたか?

更新: いくつかの追加情報が要求されました。

テストは何ヶ月も問題なく実行されました。前回実行したのは木曜日だったと思いますが、その後は問題なく実行されました。私はソース管理の履歴を調べて、何かが変更されたかどうかを確認しようとしていますが、異常なことは何もありません。

過去のさまざまな日にプロジェクトを追跡してチェックアウトすることはできましたが、Visual Source Safeを使用しています(私は知っています-私の決定ではありません:-()ので、それを行うのをためらっています。

テストは通常​​の単体テストであり、モックオブジェクトにMoqを使用しています...しかし、私が言ったように、最近まで正常に機能していました。

この問題をデバッグする方法についてのアドバイスを期待していました。

4

3 に答える 3

2

この問題も発生しましたが、ローカルではなく、ビルドサーバー(MSBuildでMSTestを使用するためにVS2008がインストールされているサーバー)でのみ発生しました。この修正プログラムをビルドサーバー上のバージョンのVS2008にインストールしたところ、この問題は解消されました。

于 2009-06-04T00:47:53.383 に答える
1

どうやらそれはバグです。すでにこれを見つけていることは間違いありませんが、念のため、ここにリンクを示します。

http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=95157

それが役に立てば幸い。

于 2009-04-07T09:15:51.110 に答える
0

ここに記載されている問題は、私のマシンでのみ発生しています。VS2008 の設定を消去し、すべてのアドインを無効にして、別の場所でプロジェクトをチェックアウトしようとしましたが、どちらもうまくいきませんでした。今のところ、マシンを再フォーマットする前の最後の解決策は VS2008 を再インストールすることだと思いますが、現時点では時間がないので、今のところ問題に対処する必要があります。

于 2009-05-11T13:17:21.177 に答える