1

我是 Watir 世界的新手。我以为我的问题很简单,但我无法完成。

这是我的代码:

 names = Hash.new
 names[:text] = 'Image'
 puts names
 browser.a("#{names}").click

我收到此错误:

'extract_selector': expected Hash or (:how, 'what'), got ["{:text=>\"Image\"}"]   (ArgumentError)

print将正确的值显示为"{:text=>"Image"}"

4

2 回答 2

2

如果您仔细阅读错误消息 - *'extract_selector': expected Hash or (:how, 'what')*

试试这个 :

browser.a(:text => 'Image').click
           :how     :what

然后做(根据OP的评论)

browser.a(names).click
           Hash

这是完整的代码:

require 'watir-webdriver'

b = Watir::Browser.new
b.goto "http://en.wikipedia.org/wiki/Ruby_(programming_language)"
# <a href="/wiki/Just-in-time_compilation" title="Just-in-time compilation">just-in-time compilation</a>
hsh = {:text => 'just-in-time compilation'}
b.a(hsh).text # => "just-in-time compilation"
于 2013-10-10T17:39:08.007 回答
0

它说它需要一个哈希,所以不要给它一个字符串:

browser.a(names).click

?

于 2013-10-10T17:50:37.117 回答