【发布时间】:2012-09-21 13:38:19
【问题描述】:
在我添加测试的项目中,我有一些复杂的元素要“获取”。
我的文本区域的 html:
<div class="quote">
<div class="clearfix">
<div class="icon"></div>
<div class="text">
<span class="yui3-widget yui3-inputwidget yui3-textareawidget yui3-textareawidget-focused" style="">
<span class="yui3-textareawidget-content">
<textarea name="" placeholder=""></textarea>
</span>
</span>
</div>
<div class="author">
(...) other text_field
</div>
</div>
</div>
</div>
目前,我使用这条线来设置值
@browser.element(:css => ".quote textarea").send_keys "test"
在 PageObject 中,我应该声明元素并使用它:
# declaration at the top
element(:quote_text, :css => ".quote textarea")
# use it where I need
self.quote_text = "text"
但是当我使用时出现这个错误:
undefined method `quote_text=' for #<PublishPage:0x33843c0> (NoMethodError)
我哪里错了?
【问题讨论】:
-
当我尝试 self.quote_text_element.send_keys "test" 时出现另一个错误:(eval):1: syntax error, unexpected '(', expecting $end {:css=>".quote textarea "}(标识符)^(语法错误)
标签: watir page-object-gem