0

我已经使用 WebDriver 和 FireFox 驱动程序设置了一个用户代理。我有几个用于不同 iPhone 和 android 移动设备的用户代理,这些设备预计将重定向到移动站点。

代码:

FirefoxProfile profile = new FirefoxProfile();
profile.setPreference(userAgentOverride, userAgent);
WebDriver driver = new FirefoxDriver(profile);

以下代码行是我用来导航到每个 url 的语法(包装在 for 循环中,循环遍历 url 列表)

driver.navigate().to(url);

我遍历了一个大部分会重定向到移动站点 (m.somesite.com) 的 url 列表,但也有一些应该重定向到主站点。例如。www.somesite.com/full-site 重定向到移动设备上的主站点。

我的问题是一旦导航到重定向到主站点的 URL 之一,列表中的其余 URL 不再重定向到他们的移动链接。我尝试删除重定向到主页的 url,然后我的所有 url 按预期重定向。

这是一个错误还是预期的?我认为它将允许在用户代理上测试任何重定向并继续工作,即使在将其发送到主站点的重定向之后也是如此。

4

1 回答 1

1

想到的第一个嫌疑人是cookies。该站点尝试变得智能,存储一个带有您的设置的 cookie(您有移动设备,但想查看完整的站点),并且在您第二次访问该页面时,它只是从该 cookie 中获取设置并且不会麻烦再检查一次。

导航到页面后尝试driver.manage().deleteAllCookies() ,这应该会删除所有存储的 cookie。

于 2012-05-07T19:24:04.977 回答