2012-01-25 6 views
2

私は、テキストフィールドにアクセスするためにCSSセレクタを使用してワチール-webdriverを使用してテキストフィールドを設定したいと思いますが、それはmetod setWatir::HTMLElementのために定義されていないと文句を言い:cssセレクタを使ってテキストフィールドにアクセスするには、watir-webdriverでテキストフィールドを設定する方法はありますか?

$ ruby -v 
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.2.0] 

$ gem -v 
1.8.15 

$ gem list selenium-webdriver 
*** LOCAL GEMS *** 
selenium-webdriver (2.17.0) 

$ gem list watir-webdriver 
*** LOCAL GEMS *** 
watir-webdriver (0.4.1) 

$ irb 
> require "watir-webdriver" 
=> true 

> browser = Watir::Browser.new :firefox 
=> #<Watir::Browser:0x787eb29124fb7658 url="about:blank" title=""> 

> browser.goto "google.com" 
=> "http://www.google.com.mx/" 

> browser.element(:css => "input[name=q]").set "test" 
NoMethodError: undefined method `set' for #<Watir::HTMLElement:0x007fe39b2680c8> 
    from /Users/zeljko/.rvm/gems/ruby-1.9.3-p0/gems/watir-webdriver-0.4.1/lib/watir-webdriver/elements/element.rb:317:in `method_missing' 
    from (irb):24 
    from /Users/zeljko/.rvm/rubies/ruby-1.9.3-p0/bin/irb:16:in `<main>' 

環境:MacのOS X 10.7.2 、Firefox 9.0.1。

答えて

4

使用エレメント#のto_subtype

browser.element(:css => "input[name=q]").to_subtype.set "test" 

または、なぜワチールセレクタを使用していませんか?

browser.input(:name => "q").set "test"  

xpathまたは:cssを使用して、Watir APIのパワーを実際に活用しているわけではありません。

+0

これは長い話です。私はあなたにビールの詳細を伝えます。 : –

+0

問題は終了しない: 'browser.element(:css =>" textarea ")。to_subtype.set" text "'は返す 'NoMethodError:未定義メソッド 'set' for# 。 –

+0

テキストエリア問題のチケットを作成しました:https://github.com/watir/watir-webdriver/issues/118 –

関連する問題