2011-12-13 7 views
1

シナリオ内の各ステップで使用されているステップ定義をプリントする方法はありますか?キュウリの各シナリオステップにどのステップ定義が使用されているかを確認するには

各ステップは、それを解釈するために使用されたステップ定義と共に、それに続くように理想的には印刷されます。

例:

$cucumber test.feature 
"Given I am on the homepage" => test_steps.rb:1 "Given I am on #{capture_model}" 

答えて

1

私はこの質問に遭遇し、まだ答えが必要かどうかわかりません。 しかし、あなたが望むものを得るための非常に簡単な方法があります。

あなたのプロジェクトには、cucumber.ymlがあります。 標準オプションを定義する行があります。あなたは "pretty"に書式を変更して常に素晴らしい出力を得たり、-f "pretty"でキュウリを実行したりするべきです。ここで

は、私は私のcucumber.ymlを持っている行です。

std_opts = "--format #{ENV['CUCUMBER_FORMAT'] || 'pretty'} --strict --tags [email protected]" 

そして、これはあなたが得る出力されます。

Scenario: Some scenario  # features/the_feature_its_in:line 
    When I do something   # features/step_definitions/a_step_file.rb:12 
    And I do another thing  # features/step_definitions/another_step_file.rb:180 
    Then I validate something # features/step_definitions/a_step_file.rb:25 

出力も色分けし、彼らとして表示されます実行されます。合格するステップは緑色になります。 失敗したものは赤色で、失敗したものはステップの直後に失敗したというエラーメッセージが表示されます。

+0

-f prettyはステップの場所を追加せず、prettyはデフォルトのフォーマッタであるため、このオプションを指定する必要はありません。あなたの出力例については、 'stepdefs'のようなものにenv var' CUCUMBER_FORMAT'を設定する必要があります。 –

+1

私のために、それはほとんど働いた。私は '--format pretty --expand'を最後に使用しました。 – qben

+0

'シナリオアウトライン'の場合、使用されているステップを表示するには '--expand'フラグが必要です。 – EricC

関連する問題