2012-05-09 41 views
2

有誰知道我怎麼能得到一個網址之間的JavaScript window.location.href =「url」; 在java中使用seleniumhq web-driver。從window.location使用硒獲取網址

想象一下這樣的流程。

鏈接頁>第2頁>頁3>最後一頁

"Link Page"具有的鏈接:

< A HREF = 「linkToPage2」 >鏈接< /一個>然後硒點擊的東西的鏈接元件像這樣:

webElement.click();

Page 2執行window.location.href = 「第3頁」,然後Page 3 發送重定向到Final Page

是否有可能從Page 3獲取url甚至是歷史導航?

+0

我很懷疑,因爲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

中硒的webdriver(在Java中)最簡單的方法:

String browserUrl = driver.getCurrentUrl(); 

您也可以在硒JavaScript調用:

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