如何实时填充多个PageObject Textfield



我正在处理一个问题,无法找到智能解决方案。简而

 text_field(:txt_field_1, id: 'field1')
 text_field(:txt_field_2, id: 'field2')
 ....

我可以轻松地用:

填充一个字段
def fill_field1(content)
 self.txt_field_1 = content
end

...调用方法:

fill_field1('John Doe')

我正在寻找的是使用使用Page-Object元素名称作为方法参数填充多个字段的唯一方法,例如:

def fill_fields(field, content)
 self.field = content
end

...并以这种方式调用该方法:

fill_fields('txt_field_1', 'John Doe')

上面的示例以"未定义方法"错误失败。我尝试使用send()方法,例如self.send('field') = 'John Doe'失败。我很确定可以做到这一点...您能为这个问题提供一些启示吗?

基于示例,您可以使用page-object gem内置的 populate_page_with方法。假设文本字段已经在页面对象中定义了,那么您可以执行:

example_page.populate_page_with :txt_field_1 => 'John Doe'

或做多个字段,例如:

example_page.populate_page_with :txt_field_1 => 'John Doe', :txt_field_2 => 'Jane Doe'

相关内容

  • 没有找到相关文章

最新更新