ReSharper 2024.1 ヘルプ

テストリンカー

ReSharper options: Tools | Unit Testing | Test Linker

このカテゴリでは、テストとテストされたコードの間を移動するときに、テストとテストされたコードをリンクするためのオプションを指定できます。

接辞検索を使用する

ReSharper は、名前が指定された接辞で始まるか終わるテストクラスを、テストされるコード内の対応するクラスにリンクします。テストクラス名を無視し、ナビゲーションに他のヒューリスティックを使用するには、このチェックボックスをオフにします。

属性ベースの検索を使用する

ReSharper は、特定の属性でアノテーションが付けられたテストクラスを、テストされたコード内の対応するクラスにリンクします。

ReSharper は常に JetBrains.Annotations[ テスト対象 ] 属性を考慮します。例: SampleClass という名前のクラスから移動する場合、[TestSubject(typeof(SampleClass))] のアノテーションが付けられたテストがナビゲーションの宛先として提案されます。

テストに別の属性のアノテーションを付けてテスト対象のクラスにリンクする場合は、[TestSubject] に加えて考慮されるように、この属性の完全修飾名を指定します。ソリューションごとに指定できる属性は 1 つだけであることに注意してください。

属性を無視し、ナビゲーションに他のヒューリスティックを使用するには、このチェックボックスをオフにします。

汎用引数検索を使用する

ReSharper は、基本テストクラスにテスト対象クラスを表す汎用パラメーターがあり、この汎用パラメーターに特定の属性のアノテーションが付けられている場合、テストクラスをテスト対象クラスにリンクします。

次の例を考えてみましょう。

[TestFixture] public abstract class TestsFor<[MeansTestSubject] T> { private AutoMock myMock; public T Component => myMock.Create<T>(); } public class TestsForSampleClass : TestsFor<SampleClass> { [Test] public void TestSample() { Component.DoSomething(); } }

この例では、汎用パラメーター TJetBrains.Annotations[ 手段テストの件名 ] 属性のアノテーションが付けられます。このようなシナリオでは、この属性が常に考慮されます。これらの目的で別の属性を使用する場合は、[MeansTestSubject] に加えてそれを考慮する完全修飾名を指定します。ソリューションごとに指定できる属性は 1 つだけであることに注意してください。

一般的な引数を無視し、ナビゲーションに他のヒューリスティックを使用するには、このチェックボックスをオフにします。

単体テストの作成

このカテゴリでは、単体テストを作成するためのオプションを指定できます。

テストクラスの命名規則

このオプションは、作成されたテストクラスにどのような名前を提案するかを定義します。上記のテストクラスの接辞フィールドで指定された最初の接辞が使用されます。

テスト対象者についてのアノテーションを付ける

このセレクターは、どのような場合に、作成されたテストクラスに、テストされたクラスとのリンクに役立つ属性のアノテーションを付ける必要があるかを定義します。属性を追加する必要がある場合、ReSharper は上記のテスト対象のメンションの属性名フィールドで指定された属性を使用するか、フィールドが空の場合は JetBrains.Annotations[TestSubject] 属性を使用します。

次のオプションから選択できます。

  • なし : 作成されたテストにはアノテーションが付けられません。

  • 明らかでない場合 : 基本テストクラスがテスト対象クラスを表す汎用引数とともに使用される場合、作成されたテストにはアノテーションが付けられません (上記のオプション汎用引数検索を使用するを参照)。

  • 名前から推測できない場合 : テスト名にテスト対象のクラスの名前が含まれており、上記のテストクラスの接辞フィールドで指定された接尾辞のいずれかに一致する接尾辞または接頭辞が含まれている場合、作成されたテストにはアノテーションが付けられません。

  • 推測できない場合 : テストされたクラスへのリンクが名前またはジェネリクス引数から推測できる場合、作成されたテストにはアノテーションが付けられません。

  • 常時 : 作成されたテストには常にアノテーションが付けられます。

関連ページ:

テストとテストされたコード間を移動する

ReSharper は、単体テストとテスト済みコード間を移動できます。キャレットがクラス名またはその宣言内の任意の場所にある場合、を押して関連テストに移動できます。逆も同様です。テスト上でこのショートカットを押すと、テストされたクラスに移動します。このナビゲーションは、次に移動メニューでも使用できます。単体テストから移動する場合はテスト対象を選択し、テスト済みクラスから移動する場合は関連するテストを選択します。ユニットテスト間の移動のために、ReSharper はテストクラスと対応するテスト対...

ユニットテストを作成する

ReSharper は、選択したクラスの単体テストを作成する簡単かつ効果的な方法を提供します。テストクラス、テストメソッド、さらには必要に応じて新しいテストプロジェクトも作成されます。AI Assistant がアクティブ化されている場合は、作成されたテストに対して実際のテストロジックを生成することを選択できます。クラスの単体テストを作成するエディターで、単体テストを作成するクラスにキャレットを置きます。を押すか、コードの生成メニューを開いてユニットテストを選択します。ソリューションに、クラス名と...

テストランナー

テストされているシャドウコピーアセンブリこのオプションを有効にすると、テストに参加するアセンブリが一時ディレクトリにコピーされます。これにより、関連するテストの実行中でもテストアセンブリを編集および再構築できます。シャドウコピーの 2 つのオプションから選択できます。ネイティブ — テストフレームワークのシャドウコピーメカニズムを有効にします。通常はアセンブリのみをコピーします。高度 — 既定では、このメカニズムは、アセンブリがコンパイルされたディレクトリから関連するすべてのファイルとサブディレク...

NUnit

ReSharper オプションのこのページでは、NUnit テストに関連する単体テスト設定を調整できます。テストの発見:ソリューションの NUnit テストを単体テストエクスプローラーウィンドウに一覧表示するには、ReSharper が単体テストを検出する必要があります。特定のプロジェクトでのテストの検出は、プロジェクトがビルドされた後にのみ発生します。ビルド後に単体テストを検出するための速度または精度のいずれかを選択できる 2 つのオプションから選択できます。メタデータ (デフォルト) このモード...