2011-09-18 11 views
1

rspecとwatirを使っていくつかのtddを試していて、過去には見えないような問題が出てきました。私はwatirにリンク(target = "_ blank")をクリックして、新たに読み込まれたページのURLを取得したいと思っています。 Watirがリンクをクリックしますが、私がURLを取得しようとすると、私は古いURLを受け取りません。 Watirのドキュメントは、Browser urlメソッドが現在のurlを返すことを示しているようです。 Watirに現在のURLを取得するためのjavascriptを実行させることでこの問題を解決するように思われるブログポストを見つけましたが、これは私のためには機能しません。 Watirとのリンククリックから現在のURLを取得する方法はありますか?ブラウザのURLが新しいURLを返さない

<!-- the html --> 
<a href="http://www.linkedin.com" target="_blank">LinkedIn</a> 

#The rspec code 
it "should load LinkedIn" do 
    browser.link(:href => "http://www.linkedin.com").click 
    browser.url.should == "http://www.linkedin.com" 
end 

答えて

2

ターゲットは、したがって、あなたはURLを主張し、そのウィンドウに切り替える必要があり、新しいブラウザウィンドウにリンクをロードします:

it "should load LinkedIn" do 
    browser.link(:href => "http://www.linkedin.com").click 
    browser.window(:title => /.*LinkedIn.*/).use do 
    browser.url.should == "http://www.linkedin.com" 
    end 
end 

参照:より多くの例

+0

ありがとうhttp://watirwebdriver.com/browser-popups/!私は新しいウィンドウに切り替える必要があることを知らなかった。 – binaryFever

関連する問題