无法比较<nobr>标记的预期结果

时间:2015-07-20 09:34:12

标签: ruby watir watir-webdriver page-object-gem

nobr标记,其中包含一些文字:

<nobr>+380</nobr>

我在page-object中描述了它:

elements(:txtCode, :nobr, :xpath => "//td[@id='phone_prefix']/nobr")

我需要检查它的值,并使用以下期望:

expect(page.txtCode.text).to eql('+380')

但我收到以下错误:

undefined method `txtCode' for #<Page:0x3071d30>

如何描述此nobr元素以使expect()生效?

1 个答案:

答案 0 :(得分:0)

您正在定义元素集合而不是元素,因为您使用的是elements而不是element。在页面对象上创建的唯一方法是txtCode_elements。请改用element

element(:txtCode, :nobr, :xpath => "//td[@id='phone_prefix']/nobr")

您可以从Justin Ko的这篇博客文章中了解有关元素集合的更多信息:https://jkotests.wordpress.com/2013/06/24/defining-element-collections-using-the-page-objects-gem/