nugetからnunitをインストールした後、testdriven.netを強制的にnugetが参照したnunit dllを使用させるにはどうすればよいですか?
-
28-10-2019 - |
質問
私は促進するビジュアルスタジオソリューションをセットアップしようとしています。
bdd
使用 スペックフロー http://www.specflow.org/
こちらのtekpubで説明されているように: http://tekpub.com/view/concepts/5
をお願いします:
すべての参照と依存関係を私のソリューションのディレクトリ構造のルートの下に保つために
「nunitでテスト」を使用する機能は、testdriven.netが提供するプロジェクトを右クリックしたときにコマンドします。
欲しくない:
- testdriven.netがそれ自体でインストールするnunitのバージョンを使用するには
欲しい:
- 「nunitでのテスト」、コマンドは、私のソリューションのサブディレクトリの下にnugetがインストールするヌニットのバージョンを使用するコマンド
詳細と私がすでに試したこと:
testdriven.netをインストールすると、次のようなパスに独自のバージョンのnunitを配置します。
- プログラムファイル(x86) testdriven.net 3 nunit 2.5
nugetを使用して最新バージョンのnunitをインストールすると、次のようなパスにヌニットを配置します。
- solution_root packages nunit.2.5.10.11092
nugetは、 packages nunit.2.5.10.11092 lib nunit.framework.dllへの参照を自動的に追加します。 TD.NETが実際にあなたのためにセットアップするヌニットDLLを使用していないため、TD.NETメニューでヌニットテストを簡単に実行したい場合、その参照はほとんど価値がありません。
- testdriven.netのメニューに、プログラムファイル(x86) testdriven.net 3 nunit の下にインストールするnunit dllの代わりに、ソリューションのパスで参照されたnunit dllを使用するように強制するにはどうすればよいですか?
また
- それが不可能な場合は、testdriven.netを使用せずにソリューションフォルダーの下にあるnunitを使用してスペックフローテストを実行する簡単なショートカットキー/メニューコマンドがありますか?
なぜ私はこれをしようとしているのですか?
Nunitをnunitでインストールして、テストフレームワークのLibsをソリューション内およびソースコントロールの下に保持できるようにしました。ソリューションのパス(solution_root packages nunit.2.5.10.11092)の下でnunit.framework.dllのようなものを参照する機能が必要です。 。
私はすでにここで提案を試しました:
そして、それはまだ私のために1つのnugetインストールの代わりに、testdriven.netのnunitのバージョンを起動しているようです。
また、TD.NETによってインストールされたnunitファイルを手動でコピーして交換したくありません。これにより、ソース制御下でソリューション固有の依存関係ファイルや分離ができないためです。
解決
これがまさにあなたが望んでいることを確信していませんが、ここに行きます:
Visual Studioの下(私は2010年を使用しています):
- 行きます ツール - >オプション - >テストドリブン - >テストランナー
- このセクションには、TD.NETを使用して出荷するすべての事前に設定されたテストランナーがリストされています。
- Regeditを実行します。
- に移動: * hkey_local_machine software wow6432node mutantdesign testdriven.net testrunners *これは32ビットOSで異なります。
新しいキーNunit 2.5.xを追加します(別のキーをコピーして、必要な設定を変更するだけです)。
ビジュアルスタジオを再起動します。
- ステップ#1のメニューの下に、新しいテストランナーが見つかります。
- クリックして保存します。
これから、テストは構成したテストランナーで実行されます。