Robot Framework - 使用下拉選單



本章我們將學習如何使用 Selenium 庫操作下拉選單。

下拉選單測試的專案設定

我們首先在 RIDE 中建立一個專案來操作瀏覽器。使用命令列中的 `ride.py` 開啟 RIDE:

Dropdown Testing

點選新建專案併為您的專案命名。

Dropdown New Project

這裡命名為 dropdown。點選確定儲存專案。

右鍵點選建立的專案名稱,然後點選新建測試用例

Dropdown New Test Case

Dropdown New Test Case Ex

為測試用例命名,然後點選確定儲存。

專案設定完成。現在,我們將為下拉選單編寫測試用例。由於我們需要 Selenium 庫,我們需要在專案中匯入它。

點選左側的專案,然後從新增匯入中使用,如下所示:

Dropdown Add Import

現在,點選。將出現一個螢幕,您需要在其中輸入庫名稱:

Dropdown Library

點選確定,庫將顯示在設定中。

Dropdown Displayed

給定的名稱必須與安裝在 site-packages 中的資料夾名稱匹配。

如果名稱不匹配,庫名稱將顯示為紅色:

Dropdown site packages

庫匯入顯示紅色意味著該庫在 Python 中不存在。現在我們完成了 Selenium 庫的匯入。

下拉選單的測試用例

下拉選單的測試用例將從下拉選單中選擇值。要進行此操作,我們需要該下拉選單的定位器(識別符號)。

考慮以下下拉選單的 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` 是`定位器`。在上面的例子中,`name` 是 `carbrand`。我們還需要值,以便我們可以選擇它。上面的例子中的值是:`audi, bmw, chevrolet 和 datsun`。

現在,我們將建立一個帶有下拉選單的測試頁面,在瀏覽器中開啟它,然後從下拉選單中選擇值。

測試用例詳情如下:

  • 在 Chrome 中開啟瀏覽器 URL - **https:///robotframework/dropdown.html**

  • 輸入下拉選單的詳細資訊

  • 執行測試用例

在 RIDE 中編寫測試用例的關鍵字時,按 Ctrl + 空格鍵。這將提供命令的所有詳細資訊。

對於下拉選單,我們有三種方法:

  • 按索引選擇列表項
  • 按標籤選擇列表項
  • 按值選擇列表項

我們將透過一個例子來展示上面所有情況的操作。

在我們的測試頁面中,我們將建立 3 個下拉選單,並使用上述測試用例按索引、標籤和值選擇下拉選單。

dropdown.html

<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>
Dropdown example

我們將在 RIDE 中為所有 3 個下拉選單選擇新增測試用例。

對於索引,我們需要傳遞該下拉選單的定位器 - name 或 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。

標籤是在螢幕上開啟下拉選單時看到的。

Dropdown screen

如果要選擇一天,您可以從下拉選單中選擇一個。

按值選擇列表項

這是年份列表。列表中的值從 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。

以下是最終的測試用例列表:

Dropdown test cases

執行後,以下是根據測試用例對下拉選單進行的選擇:

Dropdown selection

執行詳情

Dropdown Execution Details

報告詳情

Dropdown Report Details

日誌詳情

Dropdown Log Details

日誌中的測試用例詳情

Dropdown Test case Details

結論

我們已經看到了如何透過值、索引和標籤來操作下拉選單。我們可以參考日誌和報告來獲取執行的測試用例的詳細資訊。

廣告