2

私はwatirを初めて使用しますが、これはバグであるとしか想像できません:

require "watir" Watir::Browser.default = 'safari' b = Watir::Browser.new b.goto() => nil b.link(:title, "Start").click

期待どおり次のページに移動しますが、次のページではリンクがあっても機能しません

b.link(:title, "何かをする").exist? =>真

次に入ると

b.link(:title, "何かをする").click 何も起こらず、もちろん href 属性でさえも次のページにリンクします (より正確には、同じページですが、異なる要求パラメーターです)

:xpath でリンクを識別するのも同様です。ブラウザとして「firefox」を使用しても同じことがうまくいきます。

私はSafari 5.0.1、ruby 1.8.7を使用し、他のsafariwatir-0.3.8の横にインストールしました


実際、サファリの制御は部分的に機能しますが、2 ページ目にハングする理由がわかりません。以下は、インターネットでのシナリオを使用した例です。

これはうまくいきます:

browser.goto(" http://reiseauskunft.bahn.de/bin/query.exe/dn?S=フランクフルト(メイン)Hbf&Z=Nrnberg%20Hbf&date=%2B30&time=1500&start=1& ") => nil

これも問題なく動作します - リンクは存在します:

browser.link(:title, /Mit Tickets zum Normalpreis/).exist? =>真

これは機能しません。ブラウザ ウィンドウは変更されません。

browser.link(:title, /Mit Tickets zum Normalpreis/).click => nil

fire_event または fireEvent を試したいのですが、irb は無効なメソッドを示しています。イベントの発火について私が見つけたヒントは古くなっていると思いますか?

4

1 に答える 1

0

私の知る限り、Safari を駆動する唯一の方法は、safariwatir gemを使用することです(Mac OS X でのみ動作します)。これを試してください(Watir wikiのSafariWatir wikiページから):

require 'rubygems'
require 'safariwatir'
browser = Watir::Safari.new
browser.goto("http://google.com")
于 2010-09-02T10:14:14.220 に答える