13

Visual Studio 2012 Ultimate Edition をインストールし、SpecFlow を構成しました。次の構成を使用して、config.xml ファイルでテストを実行しました。

<specFlow>
<unitTestProvider name="MsTest" /> 
</specFlow>

精巣を作成し、適切にコンパイルすることができました。しかし、[SpecFlow シナリオの実行] または [SpecFlow シナリオのデバッグ] オプションを使用してコンテキスト メニューからシナリオを実行しようとしたときに、アクションが表示されません。「ビルドが成功しました」と表示されるだけで、その後は何も起こりません。

シナリオを実行する他の方法があるかどうか、誰かが親切に説明できますか?

前もって感謝します。

4

3 に答える 3

7

app.config ファイルは次のようになります。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="specFlow" type="TechTalk.SpecFlow.Configuration.ConfigurationSectionHandler, TechTalk.SpecFlow" />
  </configSections>
  <specFlow>
    <unitTestProvider name="MsTest" />
  </specFlow>
</configuration>

ここに SpecFlow wiki へのリンクがあります。

次に、ソリューションを再構築すると、テストを確認して実行できるようになります。テスト/Windows/テスト エクスプローラーからテストを表示して実行できます。

また、テスト プロジェクトから Microsoft.VisualStudio.QualityTools.UnitTestFramework への参照があることを確認してください。手順は次のとおりです。

  1. 新規プロジェクトの作成: 私の場合は MVC 4
  2. ソリューションに「単体テスト プロジェクト」を追加
  3. SpecFlow nuget パッケージを「単体テスト プロジェクト」に追加します。
  4. ランダムな SpecFlow 機能/テストを 1 つ追加します 5) テストを実行して、機能することを確認します
于 2013-05-24T17:27:05.070 に答える
0

これが非常に古い投稿であることは承知しています。私は過去 4 日間同じ問題を抱えていましたが、最終的にランダムな StackOverflow リンクで解決しました。他の開発者の時間を節約するために、次のことが役立つ場合があります。

  1. ReSharper のバージョンを 10 から 8.2 に変更
  2. ツール > 拡張機能と更新 > オンラインで検索 > NUnit テスト アダプター > インストール
  3. ビジュアル スタジオ 2013
  4. Specflow 最新バージョン
  5. nuget パッケージ マネージャーのコマンド ウィンドウを使用して、単体テスト プロバイダー NUnit をインストールします。ツール -> Nuget パッケージ マネージャー -> パッケージ マネージャー コンソール。ウィンドウでこれを実行します - パッケージ specflow.Nunit をインストールします
  6. Visual Studio を再起動します。
  7. > something.Feature > シナリオの説明を右クリック > run unit test OR run specflow scenario に移動します。単体テスト セッションが表示されます。

同じ問題を抱えている他の人に役立つことを願っています。

于 2015-12-01T10:56:54.497 に答える