我讀過一些文章和例子,但我仍然不確定如何組織我的測試套件。機器人框架:我是否以正確的方式實現頁面對象模式?
比方說,我將測試一個公司網站,主頁有一個菜單,讓用戶訪問「about」,「products」,「contact us」等頁面。
這是我想出迄今構建我的項目,但我不知道它的可擴展性和可維護性方面的最佳方式:
/src/test/robotframework/acceptance
包含GeneralResources.robot文件和每個網站的一個文件夾頁面。
GeneralResources.robot
文件包含將由所有測試中使用的庫引用一個 「設置」 部分(如:Selenium2Library)/home
文件夾包含4個文件:__init__.robot
與測試設置和測試拆解所有主頁測試。Resources.robot
全局變量(如$ {} HOME_URL或 $ {} home_title),並在主頁測試將使用更高級別的關鍵字。PageObjects.robot
帶有變量,該變量存儲將在主頁中測試的所有對象(例如主標識,主菜單,頁腳等)的定位器。tests.robot
我將在主頁上執行所有測試。所述設置部分調用其他文件(除了INIT其自動檢測)是這樣的:
資源Resources.robot
資源PageObjects.robot
資源../Gener alResources.robot
- 文件夾也將包含4個文件,組織方式爲/ home文件夾相同。
/products
文件夾也將包含4個文件,組織方式與/ home文件夾相同。/contactus
文件夾也將包含4個文件,組織方式與/ home文件夾相同。
我並不確定這是正確的路要走,因爲每頁4個文件看起來像一個開銷。我想知道如果我忽視的東西,或者也許一些我使用的文件應該被合併成一個。
你有沒有考慮在Python寫你的關鍵字?它給你更多的靈活性。我寫了一個頁面對象庫,這使得這非常簡單。請參閱https://github.com/boakley/robotframework-pageobjectlibrary。不幸的是,對這個問題的回答主要是意見,而這類問題在這裏是脫離主題的。 –
謝謝,布萊恩。不幸的是,我在我的項目中使用Java,而我沒能找到,將設置頁面對象模式給我的圖書館,所以我想從頭開始組織它自己。我的結構不夠靈活嗎? – Floella