有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()
生效?
答案 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/