2012-05-09 5 views
2

誰かが私はどのようにjavascriptの間にURLを得ることができますか?window.location.href = "url"; javaでseleniumhq web-driverを使用しています。セレンでwindow.locationからURLを取得

このような流れを想像してください。

リンクページ>ページ2>ページ3>最後のページ

"Link Page"はリンクがあります。

<のhref = "linkToPage2" >リンク< /その後、>とSeleniumが何かにリンク要素をクリックこのように:

webElement.click();

Page 2 window.location.href = "ページ3" とし、Page 3Final Pageへのリダイレクトを送る実行します。

urlPage 3から取得することは可能ですか?

+0

String browserUrl = driver.getCurrentUrl(); 

をまた、セレンはJavaScript呼び出しを行うことができます歴史のページ、ちょうど長さ。 – epascarello

+0

ここで何をしようとしていますか?なぜあなたはリンクページにURLを保存していないのですか?それを使用して、ステップ3のときに直接ナビゲートしてください。(あなたの質問が間違っていると確信しています) – Amey

+0

perlnewbie 3ページのURLは動的に変更され、ページ2はリンクを知っています – jmatheusvaz

答えて

0

これまでのところ、ブラウザで行われたすべてのリクエストを記録するプロキシを使用する以外の方法は考えられません。このようなプロキシを設定し、コードから制御することは可能です。テストを書くために使用する言語は指定していません。 Javaの場合はBrowsermobが役に立ちます。 C#の場合はFiddlerCoreをご覧ください。

1

String url = selenium.getLocation();

System.out.println(url);

+1

これはWebDriverでは機能しません。 – Ben

0

(Javaで)セレンwebdriverをで最も簡単な方法:JavaScriptがさえあなたを伝えることはできませんので、私は非常にそれを疑う

JavascriptExecutor js = (JavascriptExecutor) driver; 
String browserUrl = (String) js.executeScript("return window.top.location.href.toString()"); 
System.out.println("Your browser URL is " + browserUrl); 
関連する問題