我有一个名为 LineItemsPage 的页面对象
class LineItemsPage
attr_accessor :add_line_item_button
def initialize(test_env)
@browser = test_env[:browser]
@action_bar = @browser.div(:id => 'lineitems_win').div(:class => 'window-body').div(:class => 'actionbar')
@add_line_item_button = @action_bar.img(:class => 'button add')
end
def method_missing(sym, *args, &block)
@browser.send sym, *args, &block
end
end
我像这样使用它:
When /^I click on Add Item and enter the following values:$/ do |table|
@line_items_page = LineItemsPage.new(@test_env)
@line_items_page.add_line_item_button.when_present.click
end
我想知道是否应该通过在我的 LineItemsPage 类中添加以下内容来抽象点击:
def add_item
self.add_line_item_button.when_present.click
end
然后像这样使用它:
@line_items_page.add_item
我正在寻找最佳实践,特别是关于页面对象或一般的 Ruby。我觉得通过 using 封装接口add_item()
有点远,但我想知道我是否不知道如果我不这样做可能会遇到问题。