1

Visual Studio から ScenarioOutline セットまたは ScenarioOutline セットの個々の行を実行することは実際に可能ですか?

SpecFlow のドキュメントでは、標準のシナリオと同様に、Visual Studio のコンテキスト メニューから ScenarioOutline を実行できることが簡単に説明されています。機能ファイルのさまざまな領域をクリックしてテストを実行しようとしましたが、役に立ちませんでした。ScenarioOutline テストを実行できる唯一の方法は、フィーチャー全体を実行することです。

私は Visual Studio 2013 Professional と SpecFlow 拡張機能、NuGet パッケージ、SpecRun をテスト ランナーとして使用しています。

4

1 に答える 1

0

これは、現在のバージョンのバグが原因で、テストからの行番号が機能ファイルに正しくマップされていないことが原因であると感じています。

v2 リリースでこれを修正しました。そのベータ ビルドはこちらで入手できます。

また、使用しているテスト フレームワークにも依存します。これは、行と機能の間のマッピングが機能する方法により、行テストを生成しないように specflow が構成されている場合にのみ機能するためです。行テストは、MSTest (MSTest はサポートしていません) を除くすべてのテスト フレームワークのデフォルトであるため、ベータ版を使用することに加えて、行テストを生成しないように specflow を構成する必要があります。

ここで設定について読むことができます。ご覧のとおり、これを設定に追加する必要があります。

<specFlow>
  <generator allowRowTests="false"/>
</specFlow>

これが完了したら、例の行をクリックして 1 つのテストを実行できるはずですが、通常は specrun を使用したり、Visual Studio 統合で実行したりしないため、確信が持てません。私は通常、ncrunch を使用します。これにより、これを行うことができ、また、例をテストの開始行として正しく識別できます。

于 2015-06-19T06:32:35.273 に答える