2012-05-09 42 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);