2016-05-26 16 views
2

我有以下的小工具...如何在頁面對象控件嵌入一個元素

class MdRadioButton < PageObject::Elements::RadioButton 
    extend PageObject::Accessors 
    label :title, :class => "control-label" 
    def select 
    self.click 
    end 
    def selected? 
    self.class_name.include? "md-checked" 
    end 
end 
PageObject.register_widget :md_radio_button , MdRadioButton, :element 

然後我嘗試訪問的標題是這樣的...

md_radio_buttons(:rdio, :class => "my-radio") 
... 
rdio_elements.each do |option| 
    if option.title == alert_group 
    option.select 
    end 
end 

但是,當我option.title我得到...

未定義的方法'平臺」爲#<的Watir :: HTML元素:0x162e57d8 \ >

option.select工作正常

更新

我想這...

class MdRadioButton < PageObject::Elements::RadioButton 
    extend PageObject::Accessors 
    include PageObject 

現在.title作品,但.select沒有。

的參數錯誤數(0 1)

回答

3

對於存取方法給小部件中工作,他們需要訪問該平臺。這可以通過添加一個attr_reader

class MdRadioButton < PageObject::Elements::RadioButton 
    extend PageObject::Accessors 
    attr_reader :platform 

    label :title, :class => "control-label" 
    def select 
    self.click 
    end 
    def selected? 
    self.class_name.include? "md-checked" 
    end 
end 
+0

我知道這將是這樣的事情,我只是不知道平臺的位置。謝謝,我會測試它! – Jackie

相關問題