robot framework網上介紹很多。 這篇也是對於 RF 做web測試的一點分享。但是不會涉及細節的東西。
這是一個以RF建立的測試工程。
這個工程依次有 5個 suite
回歸測試存放用例
config 保存配置信息。
ui.txt 存放頁面元素。
元素層 封裝了元素操作。
流程層 顧名思義,這里面就封裝了功能流程了。
這基層的引用關系:
回歸測試引用了流程層
流程層 引用了 元素層
元素層引用了 ui config 已經依賴的關鍵字庫。
有點類似於 開發中用到的三層。但區別明顯:開發中,引用關系通常是上層要把引用到的下層全部添加進來,而不能類似這種繼承式的引用。
想想也是很容易理解的:用戶每一步需要操作頁面的元素,而操作元素需要對具體的DOM 進行定位,把頁面所有的元素都放到ui層,配置的信息單獨放到配置文件中。
以前用 webdriver 編寫測試用例 也是把一個頁面當做一個對象來處理,對象的屬性就是組成頁面的dom元素,行為就是頁面有登錄 ,增刪查改這些操作。
具體來看這個工程的 一條case:
兩個關鍵字組成了這條用例,在流程層,我們正好看到了這兩個關鍵字。
我們只看 進入首頁 這個關鍵字,點擊這個關鍵字,我們看到它也是由這兩個關鍵字組成
這兩個關鍵字是封裝在元素層的,
查看 “進入首頁”
在這里,我們看到了兩個系統關鍵字,
open browser 打開瀏覽器,
wait until page contains 等待當前頁面出現 ${homePage_checkText} 定義的 文本內容。${homePage_checkText} 定義在cofig中。