2016-08-22 4 views
1

私はR#プラグインを構築しており、テストでそれをカバーすることに決めました。しかし、プラグインのターゲットバージョンがR#のバージョンと同じ場合、R#ランナーを使用してプラグインテストを実行することはできません。バージョン2016.2.20160818.171542JetBrains.ReSharper.SDK.Testsを使用してテストを実行しようとした場合R#テストランナーを使ってReSharperプラグインテストを実行

たとえば、次のエラーを取得します:

ERROR System.TypeLoadException: Method 'RunTests' in type 'JetBrains.ReSharper.UnitTestRunner.nUnit26.BuiltInNUnitRunner' from assembly 'JetBrains.ReSharper.UnitTestRunner.nUnit26, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' does not have an implementation.

以前のバージョンではエラーが異なっていました。

R#ランナーとSDKアセンブリが混在している可能性があります。

R#ランナーを使用してプラグインユニットテストを実行できるようにproject/R#を設定する方法はありますか?おそらく、R#devチームは自分のランナーを使用します。

ありがとうございます!

答えて

2

残念ながら、これは201.6.2のReSharperランナーのバグです。同じプロセスの同じアセンブリの複数のコピーを持つこととは何か - インストールのアセンブリとbinフォルダのアセンブリ途中で何かが台無しになってしまった。

あなたが投票に加入して、この問題を追跡することができます。RSRP-460399回避策はVisual Studioの「実験的なインスタンス」別名「カスタムハイブ」へのReSharperの古いバージョンをインストールし、開発し、このインスタンスを使用することです

プラグインをテストします。通常のインスタンスは、他の日々の開発に使用できます。

download an older version of ReSharper here (e.g. 2016.1.2)とすることができ、インストーラでは[オプション]をクリックし、カスタムインスタンスの名前を入力します。 "プラグイン"。その後、Visual Studioへの新しいショートカットを作成し、コマンドラインを "devenv.exe/rootSuffix Plugins"(またはカスタムハイブと呼ばれるもの)に設定します。

2

R#とSDKは、異なるメジャーバージョンまたはバイナリ互換バージョンのいずれかである必要があります。残念ながら、EAP内ではテストランナー内の内部APIが変更されているため、異なるEAPのR#とSDKは互換性がありません。

関連する問題