3

mstest で moq と AutoMoq を使用し、VS2012 と ReSharper 7 にアップグレードしてから、テストは mstest で正常に実行されますが、R# 単体テスト ランナーを使用すると失敗します。

Test method [...] threw exception: 
System.IO.FileLoadException: Could not load file or assembly 
'Moq, Version=3.1.416.3, Culture=neutral, PublicKeyToken=69f491c39445e920' 
or one of its dependencies. The located assembly's manifest definition does not 
match the assembly reference. (Exception from HRESULT: 0x80131040)

AutoMoq は Moq 3.1.416.3 に対して構築されており、4.0.10827.0 を使用し、app.config にアセンブリ リダイレクトがあります。これは、ローカルでは mstest で、リモートでは TFS ビルド サーバーで正常に実行されますが、R# ユニット テスト ランナーを使用する場合は正常に実行されません。

かなりの量の検索を行った後、JetBrains フォーラムで解決策のないスレッドを 1 つだけ見つけたので、SO にも問題を提起します。

4

1 に答える 1

6

mstest には、アセンブリのリダイレクトが機能しないという確認済みのバグがあります。既知の回避策があります: testsettings ファイル アセンブリ リダイレクトがある場合は動作します。R# は mstest と同じ方法でテストを実行しないと思います。mstest は実際には app.config を無視していると思いますが、それは私の推測です。R# に関する報告された問題があります。

http://youtrack.jetbrains.com/issue/RSRP-329567

これは、バグを確認する ms フォーラムの投稿です。

http://social.msdn.microsoft.com/Forums/en-US/vsunittest/thread/234926d1-42c0-4ebb-af39-1626e72f6c39

このバグがどこかで修正されることに投票できることを願っています...

そして、同じ問題を抱えた SO に関する別の投稿があります。

mstest で assemblybinding が機能しない

于 2012-09-14T06:52:31.927 に答える