ステップ定義は、を持ち、それを1つ以上のGherkinステップに関連付けるです。CucumberがシナリオでGherkinステップを実行すると、実行する一致するステップ定義を探します。

これがどのように機能するかを示すために、次のGherkinシナリオを見てください

Scenario: Some cukes
  Given I have 48 cukes in my belly

ステップのI have 48 cukes in my bellyの部分(Givenキーワードに続くテキスト)は、次のステップ定義と一致します

ステップ定義のは、正規表現またはCucumber式のいずれかです。このセクションの例では、Cucumber式を使用しています。正規表現を使用する場合は、一致からの各は、ステップ定義のへの引数として渡されます。

式が、登録済みのパラメータータイプregexpのいずれかと同じである場合、キャプチャされた文字列は、ステップ定義のに渡される前に変換されます。上記の例では、組み込みのintパラメータータイプのregexp\d+であるため、cukes引数は整数になります。

状態管理

ステップ定義は、インスタンス変数に状態を格納することにより、状態を後続のステップ定義に転送できます。

スコープ

ステップ定義は、特定のフィーチャーファイルまたはシナリオにリンクされていません。ステップ定義のファイル、クラス、またはパッケージ名は、どのGherkinステップに一致するかに影響しません。重要なのはステップ定義の式だけです。

スニペット

Cucumberが一致するステップ定義のないGherkinステップを検出すると、一致するCucumber式を含むステップ定義スニペットを出力します。これを新しいステップ定義の出発点として使用できます。

次のGherkinステップを考えてみましょう

Given I have 3 red balls

一致するステップ定義がない場合、Cucumberは次のスニペットを提案します

提案されたスニペットは、未定義のステップの一部と一致する場合、独自のパラメータータイプを使用します。colorパラメータータイプが存在する場合、Cucumberは提案された式でそれを使用します

}

スニペットを印刷するには、Cucumberを実行するときにsummaryプラグインを使用していることを確認してください。

このドキュメントの改善にご協力ください。このページを編集