我在模拟复选框的页面中有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