The Tables Pane and Keyword-Driven Testing

The Tables pane in the Eggplant Functional Suite window is where you can set up and manage keyword-driven testing. This table-based approach is also known as scriptless testing—you can parameterize test cases using the Tables feature to define the actions, arguments to pass to those actions, and the order in which to perform the actions.

Tables(表)ペイン

Suite(スイート)ウィンドウのTables(表)ペインは、現在のスイートで定義される全ての表をリストします。When you select a table in the list, the table tab opens in the main suite window in preview mode. 表を開くにはリスト内で表を右クリックしてOpen(開く)を選択するか、もしくはプレビューモードで表が表示された時にメインペインでクリックします。

新しい表を作成するには、Tables(表)ペイン内で右クリックしてNew Table(新しい表)を選びます。On Mac, you can also click the gear icon on the Tables pane title bar and select New Table. 新しい表を作成する時には、Suite(スイート)ウィンドウで新しいタブと空白の表が一緒に開いて作成します。

新たに作成された表を表示するSuite Window(スイートウィンドウ)でのeggPlant FunctionalのTables Pane(表ペイン)

新たに作成された表を表示するSuite Window(スイートウィンドウ)でのeggPlant FunctionalのTables Pane(表ペイン)。

Searching Your Existing Tables

To search for a particular table in your suite, type part of a table name in the search field above the Scripts list. To set a search filter, click the magnifying glass beside the Search field and choose Search All, Search Names, or Search Contents from the drop-down list.

Note: This search function searches all the panes in the left sidebar simultaneously.
ヒント:検索はタイプに合わせて行われますので、検索語の入力が終わる前に結果が検出される可能性があります。However, if you have searches that you frequently repeat, you can save your search as an item in the Search History by pressing Return after you type the term. 検索は虫眼鏡の下の、ドロップダウンリストに保存されます。

For complete information about using the search and replace function in the Suite window, see Using the Search Filter.

表の設定

新しい表は空白行1行から成ります。表に行を定義する度に、新しい空白行が最下部に加えられます。新しい行を今の行の上か下かどちらかに追加する事もできます。その場合は、ツールバーのAction(アクション)ドロップダウンリストから適切なオプションを選ぶか、または行を右クリックしてInsert 1 Above(1行を上に挿入)またはInsert 1 Below(1行を下に挿入)を選択します。

The table includes several columns:

  • Step: The first column includes the step number. This number is generated automatically and is not editable. Note that you can also click and drag on this column to re-order your table. If you do so, the step numbers update automatically to reflect the new positioning.
  • Action(アクション):この列はドロップダウンリストを含んでいます。そのリストからこのステップで実行したいアクションを指定します。In addition to SenseTalk commands that are included here automatically, you can make your own scriptsaccessible on the Action drop-down list on the Info pane of the Script Editor tab for each script.
  • Arguments(引数):この列にはAction(アクション)列で選択したコマンドやスクリプトで必要になる引数を入力します。For more information on arguments, see Specifying Table Arguments.
  • Expected Value: This column lets you insert the value you expect from the chosen action. For instance, for a Boolean expression, the expected value would be either True or False.
    注意:スクリプトを表アクションとして宣言する場合、期待値のプレースホルダーテキストを含めるか、または特定値を含めるかができます。
  • Actual Value(実効値):ステップを実行後、この列はアクションまたはコマンドの実際の値を表示します。This value is not editable by the user.
  • Pass/Fail(成功/失敗):実行後、このフィールドには期待値と実効値が一致した場合は、緑の背景にPass(成功)と表示されます。また一致しなかった場合には、赤の背景にFail(失敗)と表示されます。ステップが例外に遭遇した場合、この列にはError(エラー)が表示されます。行が正常に完了しても比較する値が無い場合は、表のセルが灰色に変わります。
  • Comment(コメント):コメントフィールドには、このステップに関する自身の注釈を入力します。このフィールドはオプションでこの表のステップの実行に影響しません。

Specifying Table Arguments(表の引数の特定)

表のArguments(引数)列で、必要であれば引数をAction(アクション)列で選択したコマンドに渡す事ができます。表アクションとして選択したスクリプトに引数を渡す事もできます。複数の引数を単一のアクションに渡す場合は、コンマで区切ります。

Action(アクション)列のドロップダウンリストを使ってSenseTalkコマンドを挿入する場合、必要などの引数のトークンもArguments(引数)列に挿入されます。またこのトークンは期待される引数とは何かを説明するテキストを含んでいます。

  • クリックコマンドの場合のような、期待される引数が画像の場合、挿入されたトークンはドロップダウンリストとして作動し、全画像を現在のスイートに含みます。
  • TypeText(タイプテキスト)のように引数がテキストの場合、トークンはプレースホルダーテキストとして作動します。トークンを選んでピレースホルダーテキストを使用したいテキストと入れ替えてください。
注意:スクリプトをScript Editor(スクリプトエディタ)タブの表アクションとして宣言する場合は、 トークンとプレースホルダー引数テキストを定義できますし、またスクリプトをアクションとして選択する時に出現する実際の引数を渡す事ができます。このプロセスについての情報は、The Script Editor(スクリプトエディタ)ページを参照してください。表アクションスクリプトはハイライト表示できます。Scripts(スクリプト)リスト内で右クリックしてShow(表示) > Table Actions(表アクション)を選択します。表での使用を有効にした全てのスクリプトはリスト内で青字に変わります。

表の引数として結果を渡す

表ステップは以前のステップの結果を引数として参照できます。すなわち、もしステップが結果を返せば、その結果は表の以降のステップで引数として使用できます。この機能で効果的に表の結果を他の表のアクションに渡す事ができます。

ステップ結果を引数として使用するには、番号のマーク(#)と特定のステップ番号:#<ステップ>を使って行またはステップ番号を参照します。例えば、ステップ3の結果を参照するには、#3を引数として使用します。前の行を参照する場合は、#prevが使用できます。

表の引数で、表のその後のステップに結果を渡します。

表の引数で、表のその後のステップに結果を渡せます。

表ツールバーから、または行を選択して右クリックして、ステップ参照を挿入する事もできます。ドロップダウンリストからInsert Reference(参照の挿入)を選択して、ステップ番号または#prevを選びます。複数の引数をこの方法で挿入した場合、引数はコンマ無しでリストされますが、それは有効な構文でもある(番号のマークがセパレータとして機能する)点に注意してください。

引数のステップ参照は最初に参照した行からの相対値です。If you later re-order the lines of the table, step references in arguments update automatically so that they continue to point to the same action at its new step number.

注意:表の以降のステップで発生する結果を参照することはできません。例えば、ステップ2ではステップ5の結果を参照できません。If you re-order a table, ensure that your references are still valid. 無効な参照をする表を実行しようとするとエラーメッセージが表示されます。

Using Tables for Data-Driven Testing

表を作成して外部の.csvファイルからデータ駆動テスト用の情報を引き出せます。For information about data-driven testing, see Gathering and Using Data and Data Driven Testing with Eggplant Functional.

.csvファイルを付属させるには、表のツールバー上のフォルダアイコンをクリックします。ファイルブラウザで、使用したい.csvファイルの位置を決めて、次にOpen(オープン)(Windows)またはChoose(選択)(Mac)をクリックします。このファイルは相対パスで参照します。Best practice is to store your .csv files inside the same folder as the suite that will be accessing the file. This allows you to access the file without needing to qualify or re-establish the path if you connect to Eggplant Functional remotely or if you move the suite itself.

注意:.csvファイルはヘッダー列を最初の列として含まなければなりません。Headers must be single words; they can include underscores but no other special characters.

付随するデータファイルのArguments(引数)列およびExpected Value(期待値)列から値を参照できます。値を参照するには、.csvファイルの中で、ドルマーク($)を付けて列の名を呼びます。例えば、データファイルの最初の列がLocationだったとしたら、その列から値を呼ぶには$Locationを挿入します。

Use tables for data-driven testing in Eggplant Functional.

You can use tables for data-driven testing in Eggplant Functional.

通常の表の実行では各表のアクションを一度に行います。しかし、データ駆動テスト用にデータファイルを付随させた場合は、そのファイルのデータの各行について完全に一度通して実行します(もちろんヘッダー列は別です)。Each iteration accesses one row of data. Within that iteration, all the rules of tables apply, including the ability to pass results to later steps. しかし、反復ループ間では値は渡せません。表の各受け渡しは、.csvファイルの新しい行データで開始します。

表での反応性テスト

表の実行にどれくらい時間がかかるのか、あるいは特定のステップにどのくらい時間がかかるのか、テストまたは検証したいと思うかも知れません。Actions(アクション)ドロップダウンリストのBeginTimerおよびEndTimerコマンドで反応性テストをする事ができます。

BeginTimerコマンドを挿入する場合は、タイマーの名前を引数として含めることができます。名前の引数はオプションですが、しかしタイマーに名前を付けるとタイマーをネストして使用する事ができます。For instance, you could have a timer named Main as the first and last lines of your table so that it provides a timing for the whole table. Within the table, you could enclose a subset of steps in a timer called Test1, which would allow you to validate a specific procedure within the table. BeginTimerにはExpected Value(期待値)もActual Value(実効値)もありません。

The argument for EndTimer is the name of the timer you want to stop. タイマーに名前が無い場合は、引数は空白にします。しかし、タイマーは実際には止まらない事に注意してください。その代わり、現在のタイマーの値をActual Value(実効値)列に出力して、タイマーは実行を続けます。それゆえ、表の実行時に単一のタイマーを走らせて、EndTimerを使って複数の時点でタイマーの値をチェックできます。

EndTimerのExpected Value(期待値)列では、表のステップが到達するタイミング目標となる値を挿入する事ができます。Remember that the Actual Value is the value of the timer at that point, in seconds. 使用するExpected Value(期待値)は単に比較値として表現するべきです。例えば、

  • < 1分
  • > 2秒
  • <=42

単位を明記しない場合は、秒と想定される点に注意してください。Expected Value(期待値)はActual Value(実効値)に対して比較し、ステップに成功/失敗の値を供給します。

Table(表)のツールバー

The toolbar contains several controls:

The Tables toolbar lets you manipulate tables for keyword-driven testing

Tables(表)のツールバーで、キーワード駆動テスト用の表を操作します。

  1. Run Table Script(表のスクリプトを実行):このボタンで表の実行を開始します。通常の実行では、表の全ステップは一度だけ、一続きに実行されます。しかしデータ駆動テスト用に外部ファイル(.csv)が付属している場合、実行によって表の各ラインが一回づつ、.CSVの各データ行を実行します(ヘッダーは除きます)。個々のステップが失敗したとしても、次のステップは続けて実行されます。実行中に、Run(実行)ボタンがAbort Table Script(表のスクリプトを中止)に変わるので、それで実行を止める事ができます。
  2. Run selection(選択部の実行):このボタンで、表から選択した行を実行する事ができます。実行したいステップをクリックしてハイライト表示します。Use Shift+click or Cmd+click (Mac)/Ctrl+click (Windows) to select multiple rows. The rows that you choose for Run selection don't have to be contiguous, but they always run in order.
  3. Pause Table Script(表スクリプトの休止):このボタンを使って、表スクリプトの実行を休止できます。もう一度ボタンをクリックすれば(Continue Table Script(表スクリプトの続行)、表の実行を再開します。
  4. Show results for this table: This button takes you to the Results pane and opens the tab for the current table.
  5. Action(アクション):Action(アクション)ドロップダウンリストには表で作業する際のオプションが備わっています。Most of these options are available only when you have at least one line selected in the table. オプションとして:
    • Insert 1 Above(1行を上に挿入) / Insert 1 Below(1行を下に挿入):表の現在選択されている行の上か下どちらかに新しい行を挿入します。このオプションは表で単一の行が選択されている場合のみ利用できます。
    • Delete Row(s)(行の削除):表から恒久的にひとつまたは複数の行を削除します。
    • Disable Row(s)(行を無効にする):ひとつまたは複数の行を無効にします。無効にした行は実行が出来ません。無効にした行を再度有効にするには、クリックしてAction(アクション)ドロップリストからEnable Row(s)(行を有効にする)を選択します。
    • Clear results(結果のクリア):(Actual Value(実効値)を受け取る全ての行の)成功/失敗列とActual Value(実効値)列からの表の最終実行の結果をクリアします。
    • Reset Arguments(引数のリセット):選択した行の引数をリセットして現在選択しているアクションのデフォルト値に戻します。アクションにデフォルト値が無ければ、どんな値でもクリアされます。
    • Reset Expected Value(期待値のリセット):選択した行の期待値をリセットして現在選択しているアクションのデフォルト値に戻します。アクションにデフォルト値が無ければ、どんな値でもクリアされます。
    • Insert Reference(参照の挿入):このオプションは特定の行に参照を挿入して、その行の結果を引数として使用できるようにします。ショートカットとして#prevを挿入して、前の行の結果を参照する事もできます。
  6. Data driven test file(データ駆動テストファイル):データ駆動テストに.csvファイルを付随させたら、このフィールドにファイル名が相対パスと一緒に表示されます。
    • フィールドの右側のX(削除)ボタンを使って、.csvファイルを削除します。
    • フォルダアイコンボタンを使ってファイルブラウザを開き、データ駆動テスト用に.csvファイルを付属させます。
  7. Info(情報):情報ボタンは追加情報のペインを切り替えます。追加情報とは表のLength(長さ)(行の数、すなわちステップ数)、Modified(修正)日、およびCreated(作成)日、さらに現在の表についての注釈を含める事が出来るDescription(説明)フィールドです。
  8. Save(保存):このボタンで現在の表を保存します。通常は、アップデートされた表が自動的に保存されます。しかし、表が保存していない変更を含んでいる場合はいつでも、タブのclose(クローズ)アイコンが黄色い丸印に変わります。タブやSuite(スイート)ウィンドウを閉じようとすると、Unsaved Changes(変更を保存していません)という警告を受けます。
注意:Tables(表)はスケジュールに追加できません。

To learn more about using the tables feature to implement keyword-driven testing, see The Tables Feature and Keyword-Driven Testing.

 

This topic was last updated on 2月 01, 2019, at 11:13:23 午前.

Eggplant icon Eggplant.io | Documentation Home | User Forums | Support | Copyright © 2019 Eggplant