我在模擬複選框的頁面中有span元素。這個「複選框」是否被選中是通過賦予某個類的元素來設置的。用接口包裝返回的Geb導航器
在我的網頁,我已經得到了返回使用$()選擇這個元素(IE導航儀實例)的方法:
class MyPage extends page {
def getCheckbox(String searchStr) {
$("div.parent").find(".class-a", text: searchStr)
}
def myFunc() {
def cb = getCheckbox("foo")
if (cb.has(".class-B") {
// checkbox is ticked. do something...
}
}
}
我正在尋找一種方式來裝飾返回的對象從getCheckbox()
,讓客戶希望選中該複選框的狀態可以做cb.isChecked()
,而不是更晦澀has(".class-B")
(IE以獲得類似的接口,以內建checkbox
形式控制模塊)
有什麼建議? 謝謝!
你總是可以創建一個名爲'isChecked(Navigator cb)'的方法來包裝'.has(「。class-B」)並調用它,還有一種方法可以覆蓋Navigator接口,在這種情況下你可以創建你自己的Navigator方法。這對於這樣一個簡單的事情來說似乎是一個複雜的解決方案,但是如果這是您回答問題後顯示如何覆蓋Navigator界面的問題。這是我認識你的唯一方法,就像cb.isChecked()假設cb是導航器一樣。 – switch201