使用外部資料庫庫



我們已經瞭解瞭如何使用 Selenium 庫。Selenium 庫的詳細安裝/匯入過程在章節“使用 Selenium 庫操作瀏覽器”中討論。

本章將討論資料庫庫,以及如何使用 Robot Framework 連線和測試資料庫。

訪問 Robot Framework 網站 https://robotframework.org/ 並點選,如下所示:

Database Using Robot Framework

點選庫後,您將被重定向到如下所示的螢幕:

Redirected Screen

庫被分為標準庫、外部庫和其他庫。

本章我們將重點介紹外部庫。點選外部庫後,將出現以下螢幕:

Libraries categorized

它顯示了 Robot Framework 支援的外部庫列表。在這裡,我們將更多地關注資料庫庫 (Python)。以上截圖中已對此進行了突出顯示。

點選資料庫庫 (Python) 後,您將被重定向到顯示安裝說明的螢幕,如下面的截圖所示:

Database Library

我們可以使用 pip 安裝資料庫庫,命令如下:

pip install -U robotframework-databaselibrary

在命令列中執行上述命令,如下所示:

Command line Library

庫儲存在 python lib 資料夾中,如下所示:

Python Library

安裝完成後,下一步是在專案中匯入庫並在測試用例中使用它。

匯入資料庫庫

使用命令列中的ride.py開啟 RIDE 並建立用於測試資料庫的專案。

testing database

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

Name database

點選確定儲存專案。

點選“新增匯入”下面的“庫”。

 Add Import database

 Import database

輸入庫名稱為 DatabaseLibrary,如下所示,然後點選確定。

Database Library Name

儲存後,庫顯示如下:

Saved Library Name

我們將使用 MySQL 資料庫。要使用 MySQL,我們需要安裝模組。

命令

pip install pymysql
install pymysql

現在在建立的專案下建立測試用例。

install pymysql

點選新建測試用例:

Test Case pymysql

輸入測試用例的名稱並點選確定。

我們將使用現有的名為 customers 的資料庫。

我們將使用 phpMyAdmin 來顯示 customer 資料庫:

phymyadmin

我們有一個名為 customer 的表,其中資料分佈在 6 行中。現在我們將編寫一個測試用例,連線到 MySQL 資料庫 customers 並從 customer 表中獲取資料。

在開始之前,我們將建立標量變數來儲存dbname、dbuser、dbpasswd、dbhost、dbport 和 queryresult 等資料。以下是建立的變數及其值:

queryresult

連線到資料庫的命令是:

Connect To Database pymysql ${dbname} ${dbuser} 
${dbpasswd} ${dbhost} ${dbport}
Connect To Database

我們將新增更多測試用例,如下所示:

more test cases

以下是詳細資訊:

*** Settings ***
Library DatabaseLibrary

*** Variables ***
${dbname} customers
${dbuser} root
${dbpasswd} admin
${dbhost} localhost
${dbport} 3306
@{queryResults}

*** Test Cases ***
TC1

   Connect To Database pymysql ${dbname} ${dbuser} 
   ${dbpasswd} ${dbhost} ${dbport}
   Table Must Exist customer
   Check If Exists In Database SELECT * FROM customer
   @{queryResults} Query SELECT * FROM customer
   Log @{queryResults}[0]

我們已連線到資料庫,檢查了 customer 表是否存在於資料庫中,執行了查詢並記錄了查詢的詳細資訊。

我們將執行測試用例並檢視輸出。

See The Output

查詢結果顯示了表中的結果。

日誌詳細資訊

Query Results

TC1 的詳細資訊

Details of TC1

結論

我們已經瞭解瞭如何匯入資料庫庫以及如何安裝它。現在我們知道了如何在 Robot Framework 中連線到 MySQL 資料庫並測試表。

廣告