Robot Framework - 使用變數



本章將討論如何在 Robot Framework 中建立和使用變數。變數用於儲存值,這些值可以在測試用例、使用者自定義關鍵字等中使用。

我們將討論 Robot Framework 中可用的以下變數

  • 標量變數
  • 列表變數
  • 字典變數

我們將藉助 RIDE 中的測試用例來理解每種變數的工作原理。

標量變數

標量變數將被它們被賦予的值替換。標量變數的語法如下:

${variablename}

我們可以使用標量變數來儲存字串、物件、列表等。我們首先建立一個簡單的測試用例,並在其中使用標量變數。

在命令列中使用`ride.py`開啟 RIDE 並建立一個新專案。

Scalar Variable

點選“新建專案”。

現在,為您的專案命名。

Scalar Variable project

名稱為`variables`。點選“確定”儲存專案。

右鍵單擊建立的專案名稱,然後點選“新建測試用例”:

Scalar Variable New Test Case

Scalar Variable New Test Case Ex

為測試用例命名,然後點選“確定”。

我們完成了專案設定,現在將編寫用於在測試用例中使用的標量變數的測試用例。由於我們需要 Selenium 庫,我們需要在我們的專案中匯入它。

點選左側的專案,然後在“新增匯入”中使用“庫”:

Scalar Variable Add Import

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

Scalar Variable library

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

Scalar Variable displayed

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

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

Scalar Variable displayed

標量變數測試用例

在上面的測試用例中,我們硬編碼了值,例如我們提供給測試用例的 URL、電子郵件和密碼。使用的值可以儲存在變數中,而不是硬編碼,我們可以使用變數代替。

Scalar Variable displayed

要建立標量變數,請右鍵單擊您的專案,然後點選“新建標量”,如下所示:

Test Case Scalar Variable Ex

點選“新建標量”將開啟以下螢幕,以便建立變數以及我們需要在測試用例中使用變數時替換的值。

我們在“名稱”欄位中得到`${}`。

Scalar Variable field

在這裡,我們需要在花括號內輸入變數的名稱,如下面的螢幕所示:

Scalar Variable screen

變數的名稱是`${url}`。值為:`https:///robotframework/login.html`。

我們添加了如上所示的註釋。點選“確定”儲存標量變數。變數的詳細資訊將如下所示新增:

Scalar Variable comment

變數名稱顯示在建立的專案下,如下所示:

Scalar Variable created

現在,讓我們在測試用例中使用建立的標量變數。

使用硬編碼 URL 的測試用例

Scalar Variable hardcoded

在上面的測試用例中,我們必須將 URL 替換為我們上面剛剛建立的變數。

使用標量變數作為 URL 的測試用例

Scalar Variable URL

現在,我們將執行測試用例以檢視它是否正在從變數中獲取 URL。以下是執行時獲得的輸出。URL `https:///robotframework/login.html`是從我們建立的標量變數中獲取的。

Scalar Variable picked

執行詳情

Scalar Variable Execution

使用變數的優點是您可以更改該變數的值,它將反映在所有測試用例中。您可以在該專案下建立的許多測試用例中使用這些變數。當您想要更改某些內容時,硬編碼值可能會成為一個嚴重的問題,您必須轉到各個測試用例並更改其值。在一個地方擁有變數使我們能夠靈活地以不同的變數值進行測試。

現在,我們將研究下一個型別的變數,稱為列表變數。

列表變數

列表變數將包含一系列值。要獲取值,列表項將作為引數傳遞給列表變數。

語法

@{variablename}

假設我們有值 A、B。要引用這些值,我們需要按如下方式傳遞列表項:

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

要新增列表變數,請右鍵單擊專案並點選“新建列表變數”。

Scalar Variable list

點選“新建列表變數”後,將出現一個螢幕,我們可以在其中輸入值:

Scalar Variable appears

名稱為`@{}`後跟值。它還選擇了 4 列。現在,我們將只使用第 1 列並建立列表變數,該變數將具有電子郵件 ID 和密碼的值,如下所示:

Scalar Variable password

列表變數的名稱是`@{LOGIN_DETAILS}`,給定的值是`admin@gmail.com`和`admin`,其中包含登入頁面的電子郵件 ID 和密碼。

點選“確定”儲存列表變數。變數列在專案下方,如下所示:

Scalar Variable listed

使用的變數詳細資訊列在“設定”選項卡中:

Scalar Variable settings

現在,我們將按照如下所示在測試用例中新增列表變數。

在這裡,我們為“輸入文字”和“密碼”硬編碼了值。現在,我們將將其更改為使用列表變數。

Scalar Variable hardcoded values

使用列表變數

Scalar Variable List Variable

現在,我們將執行測試用例以檢視它是否正在從列表變數中獲取值:

Scalar Variable execute

它已從列表變數中獲取電子郵件 ID 和密碼,如測試螢幕所示。

以下螢幕截圖顯示了相同的執行詳情:

Scalar Variable screenshot

在下一節中,我們將學習字典變數。

字典變數

字典變數類似於列表變數,我們將其中的索引作為引數傳遞;但是,在字典變數的情況下,我們可以儲存詳細資訊——鍵值形式。在測試用例中使用它時,它更容易引用,而不是使用 0、1 等索引。

語法

&{Variablename}

假設我們將值儲存為 key1=A、key2=B。它將在測試用例中引用為:

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

讓我們在 RIDE 中建立字典變數。

右鍵單擊專案並點選“新建字典變數”。

Dictionary Variable

點選“新建字典變數”後,將出現如下所示的螢幕:

screen appear

螢幕中的預設名稱是`&{}`,它具有“值”和“列”選項。

我們將輸入名稱和將在測試用例中使用的值。

Name Values

點選“確定”儲存變數。變數將列在專案下,也列在設定中,如下所示:

save variable

save variable settings

我們將更改測試用例以獲取字典值。

change test case

我們將更改為字典變數,如下所示。

使用字典變數

Using Dictionary Variable

點選執行後,我們將得到以下內容:

Run Dictionary Variable

執行詳情如下:

Execution Dictionary Variable

到目前為止,我們已經看到了“編輯”和“執行”選項卡。在 TextEdit 中,我們有編寫的測試用例的詳細資訊。我們還可以新增 TextEdit 中所需的變數。

測試用例

Run Tab

我們在上面的測試用例中使用了標量變數和字典變數。到目前為止,這是 TextEdit 中的程式碼;這是基於編寫的測試用例:

Used Scalar Variable

使用的變數以紅色突出顯示。我們還可以直接在 TextEdit 選項卡中建立所需的變數,如下所示:

我們添加了一個名為`${new_url}`的標量變數,其值為https://tutorialspoint.tw/

點選左上角的“應用更改”按鈕,變數將顯示在專案下,如下所示:

Text Edit

同樣,可以在需要時直接在 TextEdit 選項卡中建立其他變數——列表和字典變數。

結論

我們已經瞭解瞭如何建立和使用變數。Robot Framework 支援三種類型的變數:標量、列表和字典。我們詳細討論了所有這些變數的工作原理。

廣告