Robot-framework-working-with-dropdown

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

ロボットフレームワーク-ドロップダウンの操作

この章では、Selenium Libraryを使用してドロップダウンを操作する方法を学習します。

ドロップダウンテストのプロジェクトセットアップ

まず、Rideでプロジェクトを作成して、ブラウザーで動作するようにします。 コマンドラインからride.pyを使用して乗り心地を開きます-

ドロップダウンテスト

[New Project]をクリックして、プロジェクトに名前を付けます。

新しいプロジェクトのドロップダウン

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

作成されたプロジェクトの名前を右クリックし、_New Test Case_をクリックします-

新しいテストケースのドロップダウン

新しいテストケースのドロップダウンの例

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

プロジェクトのセットアップはこれで完了です。 次に、ドロップダウンのテストケースを作成します。 Seleniumライブラリーが必要なので、プロジェクトに同じものをインポートする必要があります。

左側のプロジェクトをクリックし、以下に示すように、_Add Import_から_Library_を使用します-

インポートのドロップダウン

ここで、[_ Library_]をクリックします。 ライブラリ名を入力する必要がある画面が表示されます-

ドロップダウンライブラリ

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

ドロップダウン表示

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

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

ドロップダウンサイトパッケージ

赤のライブラリインポートは、ライブラリがpython内に存在しないのと同じくらい良好です。これで、セレンライブラリのインポートは完了です。

ドロップダウンのテストケース

ドロップダウンのテストケースは、ドロップダウンから値を選択します。 これで作業を進めるには、そのドロップダウンのロケーター(識別子)が必要です。

ドロップダウン用の次のHTML表示を考慮してください-

<select name = "carbrand">
   <option value = "">Select car brand..</option>
   <option value = "audi">AUDI</option>
   <option value = "bmw">BMW</option>
   <option value = "chevrolet">CHEVROLET</option>
   <option value = "datsun">DATSUN</option>
</select>

ドロップダウンの場合、_name_は_locator_です。 上記の例では、_name_は_carbrand_です。 同じ値を選択できるように、値も必要です。 上記の例の値は、_audi、bmw、chevrolet、およびdatsun_です。

次に、ドロップダウン付きのテストページを作成し、ブラウザで同じものを開き、ドロップダウンから値を選択します。

テストケースの詳細は次のようになります-

  • ブラウザのURLを開く-Chromeで http://localhost/robotframework/dropdownl
  • ドロップダウンの詳細を入力してください
  • テストケースを実行する

RIDEでテストケースのキーワードを作成しているときに、Ctrl +スペースバーを押します。 これにより、コマンドの詳細がすべて表示されます。

ドロップダウンのために、それを行うための3つの方法があります-

  • インデックスリストから選択
  • ラベル別リストから選択
  • 値からリストから選択

上記のすべてのケースで機能することを示す例に取り組みます。

テストページでは、3つのドロップダウンを作成し、上記のテストケースを使用して、インデックス、ラベル、値でドロップダウンを選択します。

ドロップダウン

<html>
   <head>
      <title>Dropdown</title>
   </head>
   <body>
      <form name="myform" method="POST">
         <div>
            Dropdown By Index:
            <select name = "months">
               <option value = "">Select Months.</option>
               <option value = "Jan">January</option>
               <option value = "Feb">February</option>
               <option value = "Mar">March</option>
               <option value = "Apr">April</option>
               <option value = "May">May</option>
               <option value = "Jun">June</option>
               <option value = "Jul">July</option>
               <option value = "Aug">August</option>
               <option value = "Sept">September</option>
               <option value = "Oct">October</option>
               <option value = "Nov">November</option>
               <option value = "Dec">December</option>
            </select>
         </div>
         <br/>
         <br/>
         <div>
            Dropdown By Label:
            <select name = "days">
               <option value = "">Select Day..</option>
               <option value = "01">01</option>
               <option value = "02">02</option>
               <option value = "03">03</option>
               <option value = "04">04</option>
               <option value = "05">05</option>
               <option value = "06">06</option>
               <option value = "07">07</option>
               <option value = "08">08</option>
               <option value = "09">09</option>
               <option value = "10">10</option>
               <option value = "11">11</option>
               <option value = "12">12</option>
               <option value = "13">13</option>
               <option value = "14">14</option>
               <option value = "15">15</option>
               <option value = "16">16</option>
               <option value = "17">17</option>
               <option value = "18">18</option>
               <option value = "19">19</option>
               <option value = "20">20</option>
               <option value = "21">21</option>
               <option value = "22">22</option>
               <option value = "23">23</option>
               <option value = "24">24</option>
               <option value = "25">25</option>
               <option value = "26">26</option>
               <option value = "27">27</option>
               <option value = "28">28</option>
               <option value = "29">29</option>
               <option value = "30">30</option>
               <option value = "31">31</option>
            </select>
         </div>
         <br/>
         <br/>
         <div>
            Dropdown By Value:
            <select name = "year">
               <option value = "">Select year..</option>
               <option value = "0">2000</option>
               <option value = "1">2001</option>
               <option value = "2">2002</option>
               <option value = "3">2003</option>
               <option value = "4">2004</option>
               <option value = "5">2005</option>
               <option value = "6">2006</option>
               <option value = "7">2007</option>
               <option value = "8">2008</option>
               <option value = "9">2009</option>
               <option value = "10">2010</option>
               <option value = "11">2011</option>
               <option value = "12">2012</option>
               <option value = "13">2013</option>
               <option value = "14">2014</option>
               <option value = "15">2015</option>
               <option value = "16">2016</option>
               <option value = "17">2017</option>
               <option value = "18">2018</option>
            </select>
         </div>
      </form>
   </body>
</html>

ドロップダウン例

Rideの3つのドロップダウン選択すべてにテストケースを追加します。

インデックスの場合、そのドロップダウンのロケーター、つまり名前またはID、および選択する必要がある要素のインデックスを渡す必要があります。

インデックスによるリストの選択-例

<select name = "months">
   <option value = "">Select Months.</option>//index 0
   <option value = "Jan">January</option>//index 1
   <option value = "Feb">February</option>//index 2
   <option value = "Mar">March</option>//index 3
   <option value = "Apr">April</option>//index 4
   <option value = "May">May</option>//index 5
   <option value = "Jun">June</option>//index 6
   <option value = "Jul">July</option>//index 7
   <option value = "Aug">August</option>//index 8
   <option value = "Sept">September</option>//index 9
   <option value = "Oct">October</option>//index 10
   <option value = "Nov">November</option>//index 11
   <option value = "Dec">December</option>//index 12
</select>

ここで、月を5月として選択し、テストケースで指定するインデックスが5になるようにします。

画面上のドロップダウンを開くと、ラベルが表示されます。

ドロップダウン画面

日を選択する場合は、ドロップダウンから選択できます。

値からリストから選択

ここに年のリストがあります。 リストの値は0〜18です。

<select name = "year">
   <option value = "">Select year..</option>
   <option value = "0">2000</option>
   <option value = "1">2001</option>
   <option value = "2">2002</option>
   <option value = "3">2003</option>
   <option value = "4">2004</option>
   <option value = "5">2005</option>
   <option value = "6">2006</option>
   <option value = "7">2007</option>
   <option value = "8">2008</option>
   <option value = "9">2009</option>
   <option value = "10">2010</option>
   <option value = "11">2011</option>
   <option value = "12">2012</option>
   <option value = "13">2013</option>
   <option value = "14">2014</option>
   <option value = "15">2015</option>
   <option value = "16">2016</option>
   <option value = "17">2017</option>
   <option value = "18">2018</option>
</select>

年を選択する場合は、年に対応する値を取得し、テストケースで同じ値を追加します。 たとえば、2017年を選択する場合、値は17です。

テストケースの最終リストは次のとおりです-

ドロップダウンテストケース

実行後、テストケースに基づいてドロップダウンの選択が行われます-

ドロップダウン選択

実行の詳細

ドロップダウン実行の詳細

レポートの詳細

ドロップダウンレポートの詳細

ログの詳細

ドロップダウンログの詳細

ログからのテストケースの詳細

テストケースのドロップダウンの詳細

結論

値、インデックス、ラベルによるドロップダウンの操作方法を見てきました。 ログとレポートを参照して、実行されたテストケースの詳細を取得できます。