Я использую Windows XP, и мне нужно использовать watir с рубином, установка прошла очень хорошо, моя последняя попытка была следовать инструкциям здесь Ошибка установки WATIR Server 2003, и все было в порядке, кроме этой« ОШИБКА: при создании документации для builder-2.1.2 »установка завершилась без проблем.
Проблема в том, что когда я пытаюсь запустить образец сценария для выполнения поиска в Google, я получаю сообщение об ошибке при вызове функции set, до сих пор я не нашел никакой полезной информации об этом, если бы кто-нибудь мог мне помочь, это было бы отличный :)
кстати, здесь http://www.mail-archive.com/[email protected]/msg07722.html они говорят, что это связано с WIN32OLE, но не объясняют, как это исправить (или, по крайней мере, я не понял: s)
Я установил следующие версии
ruby -v ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-mswin32] gem env RubyGems Environment: - RUBYGEMS VERSION: 1.3.7 - RUBY VERSION: 1.8.6 (2007-09-24 patchlevel 111) [i386-mswin32] - INSTALLATION DIRECTORY: c:/ruby/lib/ruby/gems/1.8 - RUBY EXECUTABLE: c:/ruby/bin/ruby.exe - EXECUTABLE DIRECTORY: c:/ruby/bin - RUBYGEMS PLATFORMS: - ruby - x86-mswin32-60 - GEM PATHS: - c:/ruby/lib/ruby/gems/1.8 - C:/Documents and Settings/jamontoya/.gem/ruby/1.8 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - REMOTE SOURCES: - http://rubygems.org/
Ошибка
c:/ruby/lib/ruby/gems/1.8/gems/watir-1.6.6/lib/watir/locator.rb:119:in `each': failed to get IEnum Interface (RuntimeError) HRESULT error code:0x80004002 No such interface supported from c:/ruby/lib/ruby/gems/1.8/gems/watir-1.6.6/lib/watir/locator.rb:119:in `locate' from c:/ruby/lib/ruby/gems/1.8/gems/watir-1.6.6/lib/watir/container.rb:838:in `locate_input_element' from c:/ruby/lib/ruby/gems/1.8/gems/watir-1.6.6/lib/watir/input_elements.rb:5:in `locate' from c:/ruby/lib/ruby/gems/1.8/gems/watir-1.6.6/lib/watir/element.rb:54:in `assert_exists' from c:/ruby/lib/ruby/gems/1.8/gems/watir-1.6.6/lib/watir/element.rb:315:in `enabled?' from c:/ruby/lib/ruby/gems/1.8/gems/watir-1.6.6/lib/watir/element.rb:62:in `assert_enabled' from c:/ruby/lib/ruby/gems/1.8/gems/watir-1.6.6/lib/watir/input_elements.rb:364:in `set' from Search.rb:29
Пример кода (Search.rb) Я удалил комментарии и другие ненужные строки
require "watir" test_site = "http://www.google.com" browser = Watir::Browser.new browser.goto test_site browser.text_field(:name, "q").set("pickaxe") # here is the error when set is called browser.button(:name, "btnG").click browser.close
список драгоценных камней на всякий случай
*** LOCAL GEMS *** activesupport (2.3.9) builder (2.1.2) commonwatir (1.6.6) firewatir (1.6.6) fxri (0.3.6) fxruby (1.6.12 mswin32) hoe (2.6.2) hpricot (0.6 mswin32) json_pure (1.4.6) log4r (1.0.5) nokogiri (1.4.3.1 x86-mswin32) rake (0.8.7, 0.7.3) rubyforge (2.0.4) rubygems-update (1.3.7) s4t-utils (1.0.4) sources (0.0.1) user-choices (1.1.6.1) watir (1.6.6) win32-api (1.4.6 x86-mswin32-60, 1.0.4 mswin32) win32-clipboard (0.4.3) win32-dir (0.3.2) win32-eventlog (0.4.6) win32-file (0.5.4) win32-file-stat (1.2.7) win32-process (0.6.2, 0.5.3) win32-sapi (0.1.4) win32-sound (0.4.1) windows-api (0.4.0, 0.2.0) windows-pr (1.0.9, 0.7.2) xml-simple (1.0.12)