我是PageObject的新手,但我之前使用過Watir。我有一個登錄類如何訪問PageObject元素的Watir屬性?
class Login
include PageObject
page_url 'http://localhost:9090/#/login'
button(:login, :id => 'login-btn')
end
我想檢查按鈕是否啓用。通常情況下,我只是用一些調用它的Watir像
@browser.button(:id => 'login-btn').enabled?
當我嘗試使用登錄PageObject別名,我得到一個錯誤。
on(Login).login.enabled?
> NoMethodError: undefined method 'enabled?' for nil:NilClass
是否有一個PageObject味的方式來訪問的Watir屬性,如啓用,或者我需要通過@browser變量手動查找元素並檢查它呀?這似乎打敗了使用PageObject開始的目的。
'test-factory'gem允許你想要做的事情,因爲它圍繞watir進行了更多優化,而不是試圖同時支持Watir和Selenium用戶。如果你剛剛開始,你可能想要評估它作爲頁面對象寶石的替代品。如果你已經編寫了很多代碼,那麼中間碼流馬匹可能不值得轉換 –