私は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 は無効なメソッドを示しています。イベントの発火について私が見つけたヒントは古くなっていると思いますか?