【问题标题】:Page Objects as variables in Ruby/Watir页面对象作为 Ruby/Watir 中的变量
【发布时间】:2015-06-22 01:03:59
【问题描述】:

我知道你可以这样做:

class MyPage  
    include PageObject
    text_field(:field_1, :id => 'field_1')  
    text_field(:field_2, :id => 'field_2')  
end

page = new MyPage  
page.field1 = 'foo'  
page.field2 = 'bar'

我想做的是能够使用黄瓜将变量作为字段传递:

When(/^I set "([^"]*)" field to 'hello'$/) do |some_field|  
    page.some_field = 'hello'  
end  

我知道你可以使用page.send(variable) 来调用一个方法,但是page.send(variable) = 'hello' 不起作用或者我迄今为止尝试过的其他变体。有没有办法按照我的要求做?

【问题讨论】:

    标签: ruby cucumber watir-webdriver pageobjects


    【解决方案1】:

    使用 send 时在方法名称中添加=

    page.send("#{some_field}=", 'hello')
    

    【讨论】:

      猜你喜欢
      • 2020-05-25
      • 2015-05-20
      • 2018-08-17
      • 2019-02-19
      • 1970-01-01
      • 1970-01-01
      • 2019-03-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多