キーワード

キーワード は、テスト オブジェクトに対する複数の操作の組み合わせを定義したものです。キーワードの実装は、さまざまなツールとプログラム言語 (Java や .NET など) を使用して行えます。 Silk4J でのキーワードは、アノテーション付きのテスト メソッド (@Keyword)です。キーワードは、キーワード資産として保存されます。

キーワード駆動テストの作成中にキーワードやキーワード シーケンスを定義し、後でそれらをテスト メソッドとして実装できます。既存のテスト メソッドに @Keyword アノテーションを付けて、キーワードとしてマークすることもできます。 Java では、キーワードは次のアノテーションで定義されます:
@Keyword("keyword_name")

キーワード シーケンスは、他のキーワードを組み合わせたものです。キーワード シーケンスは、頻繁に使用するキーワードの組み合わせを 1 つのキーワードにまとめることにより、メンテナンスの労力を低減し、テストを理解しやすくすることができます。

キーワードまたはキーワード・シーケンスは、合計20の入力および出力パラメーターを持つことができます。キーワードを実装するテスト メソッドのパラメータは、キーワードのパラメータです。 キーワードのパラメータに違う名前を指定するために、次を使用できます:
// Java code
@Argument("parameter_name")

デフォルトでは、パラメータは Silk4J の入力パラメータです。出力パラメータを定義するには、OutParameter クラスを使用します。

注: キーワード駆動テスト エディタ でキーワードの出力パラメータを指定するには、次のように記述します。
${parameter_name}
キーワード駆動テスト エディタ で、キーワードの出力パラメータを他のキーワードの入力パラメータとして使用する場合も、同じように記述します。

キーワードとしてマークされたテスト メソッドは、次のようになります。
// Java code
@Keyword("Login")
public void login(){
    ... // method implementation
}
または
// Java code
@Keyword(value="Login", description="Logs in with the given name and password.")
public void login(@Argument("UserName") String userName, 
  @Argument("Password") String password, 
  @Argument("Success") OutParameter success) {
    ... // method implementation
}
このキーワードは、指定したユーザー名とパスワードを使ってテスト対象アプリケーションにログインし、ログインが成功したかどうかを返します。 出力パラメータを他のキーワードの入力パラメータとして使用するには、キーワード内で出力パラメータに値を設定します。
注: ヘルプ トピックを PDF で参照している場合、このサンプル コードは、実際のスクリプトでは許されない場所で改行されてしまっている場合があります。スクリプトでこのサンプル コードを使用する場合は、これらの改行を削除してください。
  • Keyword アノテーション のキーワード名パラメータは、省略可能です。メソッドの名前とは異なる名前を指定する場合に、キーワード名パラメータを使用できます。パラメータが指定されていない場合、メソッドの名前がキーワード名として使用されます。
  • Argumentアノテーションも省略可能です。メソッドをキーワードとしてマークすると、自動的にすべての引数がキーワードの引数として使用されます。例のように、userNameUserName にしたい場合など、キーワードの引数とは異なる名前を指定する場合に、Argumentアノテーションを使用できます。