我使用WebDriver和FireFox驱动程序设置了一个用户代理。我有几个用户代理,用于预期重定向到的不同iPhone和Android移动设备 移动网站。
代码:
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference(userAgentOverride, userAgent);
WebDriver driver = new FirefoxDriver(profile);
以下代码行是我用来导航到每个url的语法(包含在循环遍历url列表的for循环中)
driver.navigate().to(url);
我遍历一个网址列表,这些网址主要会重定向到移动网站(m.somesite.com), 但有一些应该重定向到主站点。 例如。 www.somesite.com/full-site重定向到移动设备上的主站点。
我的问题是,当其中一个网址被导航到重定向到主网站时,列表中的其他网址不再重定向到其移动链接。我已经尝试删除重定向到主页面的网址,然后我的所有网址都按预期重定向。
这是一个错误还是预期?我认为它可以允许测试任何 重定向到useragent并继续工作,即使在重定向发送之后 它到主站点。
答案 0 :(得分:1)
第一个想到的嫌疑人是饼干。该网站试图变得聪明,用你的设置存储一个cookie(你有一个移动设备,但想看到一个完整的网站),第二次访问该页面时,它只需要从该cookie获取设置而不是懒得再次检查。
导航到页面后尝试driver.manage().deleteAllCookies(),这应该摆脱所有存储的Cookie。