在上個章節我們對於 Playwright 已經有了基本的認識了,接著在這邊我們一起來設定環境吧!接下來關於 Web 自動化的這幾篇,我們會透過 Robot Framework 的 robotframework-browser
Library 來做為我們開發網頁自動化測試的工具。
robotframework-browser
用於與 Playwright 集成進行 Web 自動化測試。這個 Library 將 Playwright 的強大功能引入到 Robot Framework 中,使我們能夠在 Robot Framework 的測試套件中輕鬆地進行跨瀏覽器的自動化測試。
pip3 install robotframework-browser
rfbrowser init
時,它會自動下載 Playwright 支持的瀏覽器驅動,包括 Chromium(Google Chrome 的開源版本)、Firefox 和 WebKit(Safari 的渲染引擎)。這些驅動是 Playwright 進行瀏覽器自動化操作的核心,確保我們能夠在多種瀏覽器環境下運行測試。rfbrowser init
更新 robotframework-browser:
pip install --upgrade robotframework-browser
清理舊的瀏覽器二進位檔案和 node 相依性:
rfbrowser clean-node
使用新的 node 相依性初始化瀏覽器庫:
rfbrowser init
清理 node 相依性:
rfbrowser clean-node
使用 pip 刪除:
pip3 uninstall robotframework-browser
執行上述步驟後我們就完成環境的設置啦!下面我們來撰寫我們的第一個 Web UI 自動化測試,確認我們的安裝結果是符合預期的!
設置好環境後,我們可以開始編寫 Robot Framework 測試案例。以下是一個範例,展示了如何使用 Playwright 打開瀏覽器、導航到指定網站、進行操作並驗證結果。
在我們的專案目錄下創建一個 .robot
文件,例如 test.robot
,內容如下:
*** Settings ***
Library Browser
*** Test Cases ***
Verify Page Title
New Browser chromium headless=${False}
New Page https://example.com
Sleep 1s
${title}= Get Title
Should Be Equal ${title} Example Domain
在上方的 Code 我們需要在 *** Settings ***
的區塊導入 Browser 的 Library,這樣我們才能夠調用 robotframework-browser
,Test Case 中我們透過 New Page 開啟到 https://example.com 這個網頁,接著取的網頁的 Title,在透過 Should Be Equal 的斷言確認 Title 是否相同,觸發測試後的結果為 All Passed
==============================================================================
Test
==============================================================================
Verify Page Title | PASS |
------------------------------------------------------------------------------
Test | PASS |
1 test, 1 passed, 0 failed
==============================================================================
在執行時,我們可以看到電腦上的瀏覽器自動打開了,這是因為當前正在進行測試中,如果我們透過腳本做更多的行為操作時,可以看到瀏覽器正迅速的操作著網頁,相當的酷!
通過這些簡單的步驟,你已經可以開始使用 Robot Framework 和 Playwright 進行 Web 自動化測試。隨著我們對於 Robot Framework 的熟悉程度逐漸提高,我們即將可以進一步擴展我們的測試案例,並利用 Playwright 的豐富功能來優化測試流程。