メインコンテンツまでスキップ

Eggplant FunctionalでのGherkinテストの実行

Gherkinテスト(フィーチャーとして説明される)を作成した後、Eggplant Functional Suiteウィンドウでそれらを実行できます。また、SenseTalkスクリプトまたはコマンドラインからGherkinフィーチャーをトリガーすることも可能です。これらのGherkinテストを実行する方法はすべて以下に説明されています。Gherkinテストの結果は、スイートウィンドウの結果ペインで見つけることができます。

Gherkinテストの開発に関する情報については、Gherkinでテストを作成するを参照してください。

スイートウィンドウでのGherkinテストの実行

Eggplant Functional SuiteウィンドウでGherkinテストを実行するのは、スクリプトを実行するのと同じです。エディタで実行したいテストを選択したら、次の操作を行うことができます:

  • Run Scriptボタンをクリックします。

    または

  • フィーチャー内の行を選択し、Run Selectionをクリックして選択した行のみを実行します。

期待通り、テストはリストされた順序でシナリオを進行し、各シナリオ内の各ステップを順に進行します。ステップが完了すると、ステータスを示すために色が変わります:

  • 緑: ステップが成功して完了しました(ただし、以下のPassed Stepsに関する注意事項を参照してください)。
  • 赤: ステップがエラーを返しました。このステータスは、ハンドラが実行されてエラーが記録されたことを意味するか、または関連するハンドラが実行されないようにされたことを意味する可能性があります(たとえば、リモート接続がない場合)。フィーチャーの結果ペインを確認して、失敗の具体的な原因を特定します。
  • オレンジ: このステータスは、ステップのSenseTalkハンドラが見つからなかったことを示しています。ハンドラを生成していないか、Gherkinステップのテキストとハンドラの名前が一致しなくなったかのどちらかです。ハンドラがどのように生成され、名前が付けられるかについての情報は、Gherkinステップからハンドラを生成するを参照してください。

Passed Steps

フィーチャーテストを実行すると、GherkinステップがSenseTalkハンドラに接続でき、ハンドラが例外を投げずにエラーを記録せずに実行されると、ステップステータスが成功し、緑色に変わります。ただし、これはステップがあなたが意図したものをテストすることを保証するものではありません。あなたのSenseTalkハンドラコードがテストされるシステム(SUT)で予期された結果を持つことを確認するために、ハンドラコードをテストしてください。

Runウィンドウ

フィーチャーエディタでGherkinテストを実行すると、ステータスが変わるにつれてステップを表示するのが自然かもしれません。ただし、通常、Eggplant Functional UIでSenseTalkスクリプトを実行している場合、Runウィンドウを表示することに慣れているかもしれません。

Gherkinテストの場合、デフォルトではRunウィンドウは開きません。テストが実行されるにつれてRunウィンドウを表示したい場合は、メインメニューでWindow > Run Windowに移動して開くことができます。

SenseTalkスクリプトからのGherkinテストの実行

通常のSenseTalkスクリプトを使用して、Gherkinフィーチャーを呼び出すことができます。この機能を使用すると、SenseTalkのプライマリースクリプトでフィーチャーをラップして、複数のフィーチャーの実行を動的に制御できます。詳細については、プライマリースクリプトからの実行を参照してください。

SenseTalkスクリプトからGherkinフィーチャーを呼び出すには、RunFeatureコマンドを、.featureファイルの名前を唯一の必須パラメータとして使用します:

RunFeature "FeatureTest1"

フィーチャーの定義でタグを使用する場合、タグ名をオプションのパラメータとして含めることができます。これにより、そのタグを持つ要素(例えば、シナリオ)に基づいてフィルタリングすることができます:

RunFeature "FeatureTest1", "@important", "@regression"

好きなだけタグを含めることができます。タグの使用方法については、Advanced Gherkin Techniquesを参照してください。

RunFeatureコマンドで呼び出された各フィーチャーは、それぞれの結果ファイルを生成します。Gherkinテスト結果の表示方法については、下記のViewing Resultsを参照してください。

コマンドラインからのGherkinテストの実行

コマンドラインからGherkinテストを実行するには、runscriptコマンドを使用します。このプロセスは、利用可能なRunscript Command Line Optionsを含むスクリプトを実行するのと基本的に同じです。

Important

コマンドライン呼び出しを介してGherkinフィーチャーにパラメータとして渡されるタグは、SenseTalkスクリプト内のパラメータとして渡されるタグよりも優先されます。

例:

Mac:

/Applications/Eggplant.app/Contents/MacOS/runscript /Users/`<username>`/Documents/ePFSuites/gherkin.suite/Features/test1.feature -CommandLineOutput Yes

Windows:

"C:\\Program Files (x86)\\Eggplant\\runscript.bat" "C:\\Users\\`<username>`\\Documents\\FeatureImageEdit.suite\\Features\\test1.feature"

上記の両方の例で、runscriptコマンドへの完全なパスに続いて、実行したい.featureファイルの完全なパスと名前を入力します。

runscriptコマンドの使用に関する完全な情報については、Running from the Command Lineを参照してください。

Gherkinテストの結果の表示

Gherkinテストの実行結果は、Results pane of the Suite windowで見つけることができます。フィーチャーと同名のスクリプトが存在するため、フィーチャーの結果は、Resultsパネルでの名前の末尾に-Featureを追加することで示されます。フィーチャーの結果は、スクリプトの結果と同じ情報を提供します。

Gherkinフィーチャーテストの結果を表示するには、Resultsパネルでそれを選択します。Resultsエリアの上部には、Run Dateリストが表示されます。これは、フィーチャーの各実行の日付と時間をリスト化したものです。リストから特定の実行日を選択すると、その実行に関する詳細情報が下のLog Areaに表示されます。

Log Areaに表示されるフィーチャーの結果には、フィーチャー自体からの出力と、Logメッセージ(Log、LogSuccess、LogWarning、LogError、Throwなど)が含まれます。

Resultsパネルの使用方法と、ここで見つけることができる情報についての完全な情報については、Results Paneを参照してください。

ステップレベルのレポート

各ステップ(SenseTalkハンドラ)は、Eggplant Functional test caseとして報告されます。各ステップが完了すると、そのステップの結果がテストケースとしてログに記録されます。結果にはEndTestCaseコマンドのみが表示され、そのステップに関するすべての関連情報(Duration、Errors、Exceptions、Start Time、Successes、TestCase(Gherkinステップを含むEggplant Functionalハンドラの名前)、Warnings)が含まれます。次のケースはEndTestCase出力の直後に始まります。

既存のフィーチャーの検索

スイート内の特定の機能を検索するには、スクリプトリストの上の検索フィールドに機能名の一部を入力します。(注:この検索機能は、左側のサイドバー内のすべてのペインを同時に検索します。)検索フィルターを設定するには、検索フィールドの隣の虫眼鏡をクリックし、ドロップダウンリストから Search AllSearch Names、または Search Contents を選択します。

**ヒント:**検索は入力と同時に動作するため、検索語を完全に入力する前に結果を見つけることができます。ただし、頻繁に繰り返す検索がある場合は、検索語を入力した後に Return を押すことで、検索を検索履歴の項目として保存できます。あなたの検索は虫眼鏡の下のドロップダウンリストに保存されます。スイートウィンドウの検索と置換機能の完全な情報については、検索フィルターの使用をご覧ください。