使用Selenium Webdriver计算重定向的数量

时间:2013-08-06 00:09:46

标签: java javascript selenium-webdriver

我正在使用Selenium和Webdriver验证网页或网址是否存在某些元素,例如下拉框。

但是我已经看到,在某个页面上着陆时,它会被重定向到另一个页面,并且在此之后还会有一个重定向 登陆这个最后一页后,我可以验证该元素是否存在。

现在我的问题是如果我使用webdriver打开一个URL,我如何计算在到达最终URL之前完成了多少次重定向。

URL上的重定向可以通过301或302响应代码,元刷新或Javascript重定向来实现。 我可以找到一个检查但不确定它是否处理所有重定向计数的代码。

           HttpURLConnection con = (HttpURLConnection)(new URL( myURL  ).openConnection());     
    ((HttpURLConnection) con).setInstanceFollowRedirects( false );
    con.connect();
    int responseCode = ((HttpURLConnection) con).getResponseCode();
    System.out.println("Original Url"+""+ myURL+responseCode);
     int numberHops =0;
    while (responseCode!=200)           

    {
        String newUrl = con.getHeaderField("Location");
        HttpURLConnection conn = (HttpURLConnection) new URL(newUrl).openConnection();
        con.setInstanceFollowRedirects( false );
        responseCode = conn.getResponseCode();          
        //System.out.println(newUrl + responseCode);
        numberHops++;
        System.out.println("location is" + newUrl);
        System.out.println("number of Hoops before Reaching " +conn.getURL()+"is"+numberHops );
        if(numberHops >2)
            break;
    }

这也是Java代码。有一种方法可以使用webdriver代码执行此操作,并涵盖计算重定向的所有三种可能方式。 如果没有,那么如何使用Java代码计算重定向的数量。

由于

0 个答案:

没有答案