Robot-framework-working-with-variables

提供:Dev Guides
移動先:案内検索

ロボットフレームワーク-変数の操作

この章では、Robot Frameworkで変数を作成および使用する方法について説明します。 変数は値を保持するために使用され、テストケース、ユーザー定義のキーワードなどで使用できます。

Robot Frameworkで使用可能な次の変数について説明します

  • スカラー変数
  • リスト変数
  • 辞書変数

Rideのテストケースを使用して、この変数のそれぞれの動作を理解します。

スカラー変数

スカラー変数は、割り当てられた値に置き換えられます。 スカラー変数の構文は次のとおりです-

${variablename}

スカラー変数を使用して、文字列、オブジェクト、リストなどを保存できます。 最初に簡単なテストケースを作成し、その中でスカラー変数を使用します。

コマンドラインで ride.py を使用してRIDEを開き、新しいプロジェクトを作成します。

スカラー変数

[新しいプロジェクト]をクリックします。

次に、プロジェクトに名前を付けます。

スカラー変数プロジェクト

指定された名前は_variables_です。 [OK]をクリックしてプロジェクトを保存します。

作成されたプロジェクトの名前を右クリックし、[新しいテストケース]をクリックします-

スカラー変数の新しいテストケース

スカラー変数の新しいテストケースEx

テストケースに名前を付けて、[OK]をクリックします。

プロジェクトのセットアップが完了し、テストケースで使用するスカラー変数のテストケースを作成します。 Seleniumライブラリーが必要なので、プロジェクトに同じものをインポートする必要があります。

左側のプロジェクトをクリックし、インポートの追加からライブラリを使用します-

スカラー変数インポートの追加

ライブラリをクリックすると、ライブラリ名を入力する必要がある画面が表示されます-

スカラー変数ライブラリ

[OK]をクリックすると、ライブラリが設定に表示されます。

表示されるスカラー変数

指定する名前は、サイトパッケージにインストールされているフォルダーの名前と一致する必要があります。

名前が一致しない場合、ライブラリ名は赤で表示されます-

表示されるスカラー変数

スカラー変数のテストケース

上記のテストケースでは、テストケースに提供するURL、電子メール、パスワードなどの値をハードコーディングしました。 使用される値は変数に保存でき、ハードコーディングの代わりに、それらの場所で変数を使用できます。

表示されるスカラー変数

スカラー変数を作成するには、プロジェクトを右クリックし、以下に示すように_New Scalar_をクリックします-

テストケーススカラー変数Ex

[New Scalar]をクリックすると、次の画面が開き、変数が作成され、変数がテストケース内で使用されるときに置き換える必要がある値が作成されます。

[名前]フィールドに$ \ {}を取得します。

スカラー変数フィールド

ここでは、下の画面に示すように、中括弧内に変数の名前を入力する必要があります-

スカラー変数画面

変数の名前は$ \ {url}です。 値は- http://localhost/robotframework/loginl です。

上記のようにコメントを追加しました。 [OK]をクリックして、スカラー変数を保存します。 変数の詳細は次のように追加されます-

スカラー変数コメント

変数名は、次のように作成されたプロジェクトの下に表示されます-

作成されたスカラー変数

テストケース内で作成されたスカラー変数を使用してみましょう。

URLがハードコードされたテストケース

ハードコードされたスカラー変数

上記のテストケースでは、URLを上記で作成した変数に置き換える必要があります。

URLのスカラー変数を使用したテストケース

スカラー変数URL

次に、テストケースを実行して、変数からURLを取得しているかどうかを確認します。 以下は、実行時に得られる出力です。 URL http://localhost/robotframework/loginl は、作成したスカラー変数から取得されます。

選択されたスカラー変数

実行の詳細

スカラー変数の実行

変数を使用する利点は、その変数の値を変更でき、すべてのテストケースに反映されることです。 そのプロジェクトの下で作成する多くのテストケースで変数を使用できます。 値のハードコーディングは、何かを変更したい場合に深刻な問題になる可能性があります。個々のテストケースに移動して、その値を変更する必要があります。 変数を1か所に持つことで、変数に異なる値を使用して、希望する方法を柔軟にテストできます。

次に、List変数と呼ばれる次のタイプの変数を調べます。

リスト変数

リスト変数には値の配列があります。 値を取得するために、リスト項目は引数としてリスト変数に渡されます。

構文

@{variablename}

値A、Bがあるとします。 値を参照するには、次のようにリスト項目を渡す必要があります-

@{variablename}[0]//A
@{variablename}[1]//B

リスト変数を追加するには、プロジェクトを右クリックし、[新しいリスト変数]をクリックします。

スカラー変数リスト

_New List Variable_をクリックすると、値を入力できる画面が表示されます-

スカラー変数が表示されます

名前は、@ \ {}に続いて値として指定されます。 また、4つの列が選択されています。 今、私たちはただ列1を使用し、次のように値、電子メールIDとパスワードを持つリスト変数を作成します-

スカラー変数パスワード

リスト変数の名前は @ \ {LOGIN_DETAILS} であり、指定された値は*[email protected]*および admin であり、ログインページの電子メールIDとパスワードがあります。

[OK]をクリックして、リスト変数を保存します。 ここに示すように、変数はプロジェクトの下にリストされています-

リストされたスカラー変数

使用される変数の詳細は、設定タブにリストされています-

スカラー変数設定

次に、以下に示すように、テストケース内にリスト変数を追加します。

ここでは、入力テキストとパスワードの値をハードコーディングしています。 次に、リスト変数を使用するように変更します。

スカラー変数のハードコードされた値

リスト変数を使用する

スカラー変数リスト変数

次に、テスト変数を実行して、リスト変数から値を取得しているかどうかを確認します-

スカラー変数実行

上記のテスト画面に示すように、リスト変数から電子メールIDとパスワードを取得しました。

次のスクリーンショットは、同じ実行の詳細を示しています-

スカラー変数のスクリーンショット

次のセクションでは、辞書変数について学習します。

辞書変数

辞書変数は、インデックスを引数として渡すリスト変数に似ています。ただし、ディクショナリ変数の場合、詳細(キー値形式)を保存できます。 インデックスを0、1などとして使用する代わりに、テストケースで使用すると、参照しやすくなります。

構文

&{Variablename}

key1 = A、key2 = Bとして値を保存するとします。 テストケースでは次のように呼ばれます-

&{Variablename}[key1]//A
&{Variablename}[key2]//B

Rideで辞書変数を作成しましょう。

プロジェクトを右クリックし、_新しい辞書変数_をクリックします。

辞書変数

  • 新しい辞書変数*をクリックすると、次のような画面が表示されます-

画面が表示されます

画面のデフォルトの名前は&\ {}で、値と列のオプションがあります。

テストケースで使用する名前と値を入力します。

名前の値

[OK]をクリックして変数を保存します。 変数は、プロジェクトの下にリストされ、次のように設定されます-

変数を保存

変数設定を保存

辞書の値を取得するようにテストケースを変更します。

テストケースの変更

以下に示すように、辞書変数に変更します。

辞書変数の使用

辞書変数の使用

実行をクリックすると、次のものが得られます-

辞書変数の実行

実行の詳細は次のとおりです-

実行辞書変数

これまでに[編集と実行]タブを見てきました。 TextEditの場合、テストケースの詳細が記述されています。 TextEditで必要な変数を追加することもできます。

テストケース

実行タブ

上記のテストケースでは、スカラー変数と辞書変数を使用しました。 これがTextEditのこれまでのコードです。これは書かれたテストケースに基づいています-

使用されるスカラー変数

使用される変数は赤で強調表示されています。 以下に示すように、TextEditで直接必要な変数を作成することもできます-

*$ \ {new_url}* と呼ばれるスカラー変数を追加しました。指定された値はhttps://www.finddevguides.com/です。

左上隅にある Apply Changes ボタンをクリックすると、下に示すようにプロジェクトの下に変数が表示されます-

テキスト編集

同様に、他の変数-リストおよび辞書変数は、必要に応じて[テキスト編集]タブ内で直接作成できます。

結論

変数を作成して使用する方法を見てきました。 ロボットフレームワークでは、スカラー、リスト、辞書の3種類の変数がサポートされています。 これらすべての変数の動作について詳しく説明しました。