質問

私が作成した Machine.仕様の「テスト」を ReSharper に表示させるのに問題があります。

仕様は mSpec の ConsoleRunner で実行されます。ReSharper で「単体テストを実行」しようとすると、次のメッセージが表示されます。「ファイルにテストは見つかりません。」仕様にはテストマーカーが表示されません。

ReSharper /bin/ フォルダーにフォルダーを作成し、そこに適切な .dll を置きました。mSpec プラグインが ReSharper に表示されます。

何が足りないでしょうか?

また、違いがあれば、私は xUnit.NET を使用しています。

役に立ちましたか?

解決

ReSharper ランナーは、ネストされたコンテキスト クラスを考慮しません。コンテキスト クラスをネストする代わりに、次のようにします。

namespace SomeNamespace
{
    public class Specs
    {
        public class when_something_happens
        {
            Because of = () => {};
            It should_do_something = () => {};
        }
    }
}

ネストされていないコンテキストを作成します。つまり、名前空間内のルートクラス:

namespace SomeNamespace
{
    public class when_something_happens
    {
        Because of = () => {};
        It should_do_something = () => {};
    }
}

すべての条件が満たされる場合、ReSharper の緑と黄色のテスト アイコンが表示されます。

  • クラスは公開です
  • クラスは抽象ではありません
  • クラスがネストされていません
  • 仕様フィールドが 1 つ以上あります (It)、または> = 1の動作フィールド(Behaves_like<>)

他のヒント

のVisual StudioでMSpecの良い統合を持っており、ReSharperのここから入手可能であるインストーラを使用してMSpecをインストールするには:<のhref =「http://marcinobel.com/index.php/mspec-bdd-installer/」のrel = "nofollowをnoreferrer"> http://marcinobel.com/index.php/mspec-bdd-installer/ の

一緒にReSharperのとXUnit.netを使用しようとすると、

また、「ファイルが見つかりませんテスト」と同じ問題を抱えていました。しかし、私はテストエクスプローラウィンドウに私のテストを見て、そこからそれらを実行することができた可能性があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top